Erreur a la compilation
Résolu
mype
Messages postés
2459
Date d'inscription
Statut
Membre
Dernière intervention
-
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjour,
lorsque je compile mon programme le compilateur m'affiche:
"indefined to reference : ' sound_init' "
je pense que le probleme est dans mon makefile car j'ai bien installer la bibliotheque et les headers
mais je n'arrive pas a configurer mon makefile pour que ça marche
quelqu'un pourrait m'expliquer comment faire pour que le compilateur reconnaisse la fonction svp
merci d'avance
lorsque je compile mon programme le compilateur m'affiche:
"indefined to reference : ' sound_init' "
je pense que le probleme est dans mon makefile car j'ai bien installer la bibliotheque et les headers
mais je n'arrive pas a configurer mon makefile pour que ça marche
quelqu'un pourrait m'expliquer comment faire pour que le compilateur reconnaisse la fonction svp
merci d'avance
14 réponses
-
Quelquesfois, il faut spécifier la bibilothèque utilisée sur la ligne de commande du compilateur
Peut être l'option -lSDL_sound a ajouter dans ta ligne de commande gcc si tu utilises sdl
Par ailleurs, attention à la casse (Majuscules/minuscules) -
comme j'ai place ma bibliotheque autre part donc j'ai plutot mis dans le makefile
"-L/chemin" pour la bibliotheque et
"-I/chemin" pour les headers
je pense que c'est bien comme ça qu'on fait un makefile
pourtant j'ai toujours le probleme.... -
j'ai rajoute " -lfmod " parceque c'est ça que j'utilise
maintenant je n'ai plus d'erreur a la compilation
mais je peux pas executer le programme j'ai cette erreur:error while loading shared libraries: libfmod.so: cannot open shared object file: No such file or directory
est ce que quelqu'un pourrait me dire d 'ou viens le probleme et comment le resoudre svp ? -
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
oui j'ai deja vu ce site (c'est assez simple cette façon de faire) mais moi je voudrais pas mettre ma librairie avec toutes les autres
je voudrais la metre a un endroit et configurer le makefile correctement pour qu'il la trouve -
il n'y a rien qui t'empêche ;-)
as-tu essayé de l'installer et créer un lien symbolique vers ton répertoire avec tes librairies?! -
oui je les installer puis placer dans un repertoire que j'ai creer
ensuite pour faire le lien ds le makefile j'ai fait
-lfmod -L/chemin
c'est bien comme ça qu'on fait un lien ? -
moi j'ai parlé de ça
ln -s /chemin/original/libfmod.so /tes/librairies/libfmod.so
-
non j'ai pas essayé methode je vais la testé
et une fois que j'ai fait ce lien symbolique je dois faire quoi dans le makefile pour qu'il cherche au bon endroit ? -
je viens d'essayer en faisant un lien symbolique
toujours le meme probleme...
pas d'erreur a la compilation
mais je peux pas executer le programme -
compile avec l'option -g et lance le prgramme avec gdb program pour voir les erreurs
-
voici l'erreur
error while loading shared libraries: libfmod.so: cannot open shared object file: No such file or directory
-
finalement j'ai reussi ;)
enfaite au lieu de faire -L/chemin -llibrairie dans le makefile
j'ai carrement mis le chemin de la librairie et la ça marche parfaitement
merci comme meme pour votre aide -
je suis content pour toi ;-)