#1 Le 22/10/2006, à 19:30
- NiRaDo
[RESOLU] Une librairie non trouvé par gcc alors qu'elle y est !
Bonjour, je débute avec gcc car kdevelop me semble être trop compliqué.
Il y a quelque chose qui me tracasse. Exemple simple, si j'intègre la librairie standard math.h dans un fichier .c et que je le compile avec gcc, gcc ne la trouve pas alors qu'elle est bien présente dans /usr/include (et gcc va chercher là dedans par défaut les librairies d'entête).
Mon fichier main.c :
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
float a;
a = cos(18);
return 0;
}
L'erreur retournée :
dorian@dorian-desktop:~/entrainement_c/projet1$ gcc main.c -Wall -ansi
/tmp/ccucisQX.o : Dans la fonction "main":main.c:(.text+0x26): référence indéfinie vers « cos »
collect2: ld a retourné 1 code d'état d'exécution
Si quelqu'un pourrait m'aider...
Dernière modification par NiRaDo (Le 23/10/2006, à 18:39)
Hors ligne
#2 Le 22/10/2006, à 19:33
- NiRaDo
Re : [RESOLU] Une librairie non trouvé par gcc alors qu'elle y est !
Et même en ajoutant l'option -I :
dorian@dorian-desktop:~/entrainement_c/projet1$ gcc main.c -Wall -ansi -I/usr/include/
/tmp/cccY5bh1.o : Dans la fonction "main":main.c:(.text+0x26): référence indéfinie vers « cos »
collect2: ld a retourné 1 code d'état d'exécution
Hors ligne
#3 Le 22/10/2006, à 20:18
- NiRaDo
Re : [RESOLU] Une librairie non trouvé par gcc alors qu'elle y est !
C'est bon, il suffit d'ajouter -lm à la commande. Et ça fonctionne
Hors ligne
#4 Le 23/10/2006, à 00:51
- trucutu_
Re : [RESOLU] Une librairie non trouvé par gcc alors qu'elle y est !
Tiens, moi j'avais eu le problème avec la fonction log :
http://forum.ubuntu-fr.org/viewtopic.php?id=27579
...
Un petit résolu ?
#5 Le 23/10/2006, à 18:38
- NiRaDo
Re : [RESOLU] Une librairie non trouvé par gcc alors qu'elle y est !
Ah oui, merci beaucoup pour le lien, avr a donné une expliquation très interessante.
Je le mets en résolu
Il faut donc bien comprendre la différence entre l'include d'un .h et la librairie en question.
Par contre je me demande où sont placés les librairies par rapport aux .h. j'vais faire une recherche.
Dernière modification par NiRaDo (Le 23/10/2006, à 18:40)
Hors ligne
#6 Le 23/10/2006, à 23:50
- gene69
Re : [RESOLU] Une librairie non trouvé par gcc alors qu'elle y est !
*.soX ou le X est le numéro de version...
Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion
Hors ligne