Jpeglib.h, g++ & undefined reference

Signaler
Messages postés
57
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
28 juillet 2006
-
Messages postés
57
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
28 juillet 2006
-
Bonjour,



Je viens de commencer le c++ alors ma question est probablement idiote,
cependant je la pose tout de même car elle m'handicap fortement.



Mon problème repose sur la commande "jpeg_std_error"(entre autre) de la librairie jpeglib.h.



En effet lorsque je compile :

struct jpeg_decompress_struct srcinfo;

struct jpeg_error_mgr jsrcerr;

srcinfo.err = jpeg_std_error (&jsrcerr);

avec g++ il me retourne l'erreur suivante:

/tmp/ccPd8u5X.o(.text+0x14): In function `EvaF::Jpeg::Jpeg()':

main.cpp: undefined reference to `jpeg_std_error'

/tmp/ccPd8u5X.o(.text+0x38): In function `EvaF::Jpeg::Jpeg()':

main.cpp: undefined reference to `jpeg_std_error'

collect2: ld a retourné 1 code d'état d'exécution

Ces commandes fonctionnent, en temps normal, tout a fait correctement puisque je les ai retrouvees texto dans d'autres sources.



Toutefois si je supprime "srcinfo.err = jpeg_std_error (&(jsrcerr));" la compilation fonctionne parfaitement.

Je pensais que ce message etait envoye lorsqu'une fonction n'existait pas, mais si j'écris "srcinfo.err = pouetlalajpeg_std_error (&(jsrcerr));" il me retourne l'erreur:

./main/EvaFiles_Jpeg.h: In constructor ‘EvaF::Jpeg::Jpeg()’:

./main/EvaFiles_Jpeg.h:19: erreur: ‘pouetlalajpeg_std_error’ was not declared in this scope



Si quelqu'un sait ce que signifie l'erreur "undefined reference" avec g++ je suis à l'écoute.



Merci d'avance.

Thomas.
A voir également:

3 réponses

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
8
undéfined reference, ca veut dire référence non résolue, c'est a dire que le code de la fonction n'a pas été trouvé. Logiquement tu devrais avoir une librairie le contenant (un fichier .a)
Par exemple, si ton fichier est jpeglib.a, tu dois ajouter l'option -ljpeglib au linker (ld)
Messages postés
546
Date d'inscription
vendredi 13 février 2004
Statut
Membre
Dernière intervention
9 janvier 2008
1
Moi je connais pas le cpp mais il se peut que la lib jpeglib.h ne focntionne pas bien...j'ai moi meme eu des problemes avec cette lib sous devcpp....
Vas voir sur le site de belzel ,il met a disposition la meme lib mais modifiée pour enviter des erreur de liens et autres...
Messages postés
57
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
28 juillet 2006

Bonjour,

Desole du temps de reponse mais ma partition linux merdouille un brin. Je n'ai donc pas encore pu retester cependant je pense que j'ai ma reponse avec le message de vechio. A verifier !

Merci.
Thomas.