Pourquoi l'ordre de '-l' option de gcc question?

Je suis en train de compiler un programme qui utilise udis86 de la bibliothèque. En fait, je suis en utilisant un exemple est donné dans le l'utilisateur manuel de l' de la bibliothèque. Mais lors de la compilation, il donne une erreur. Les erreurs que je reçois sont:

example.c:(.text+0x7): undefined reference to 'ud_init'
example.c:(.text+0x7): undefined reference to 'ud_set_input_file'
.
.
example.c:(.text+0x7): undefined reference to 'ud_insn_asm'

La commande que j'utilise est:

$ gcc -ludis86 example.c -o example 

comme indiqué dans le manuel de manuel.

Clairement, l'éditeur de liens n'est pas en mesure de relier libudis de la bibliothèque. Mais si je change mon commandement:

$ gcc example.c -ludis86 -o example 

Il commence à travailler. Donc peut plaire à quelqu'un d'expliquer quel est le problème avec la première commande?

  • quelle version de gcc? Il peut être une version liées bug.
  • Ce n'est pas un bug!! Version: gcc (Ubuntu/Linaro 4.4.4-14ubuntu5.1) 4.4.5
  • double possible de l'éditeur de liens afin que GCC
InformationsquelleAutor | 2012-08-10