[opensuse-fr] Peut-on trouver de l'aide ici ?
Bonjours tous, J'ai un problème de compilation (gcc) probablement très "tarte". Comme je suppose qu'il y a quelques expertes à l'écoute de cette liste, j'en profite pour signifier mon problème. Il est visible ici : https://www.developpez.net/forums/d1905302/general-developpement/programmati... Je vous remercie pour l'attention que vous aurez portée à ce courriel. Patrick -- To unsubscribe, e-mail: opensuse-fr+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-fr+owner@opensuse.org
Bonsoir Patrick, Le 22/10/18, Patrick Serru <patrik@serru.net> a écrit:
Bonjours tous,
J'ai un problème de compilation (gcc) probablement très "tarte". Comme je suppose qu'il y a quelques expertes à l'écoute de cette liste, j'en profite pour signifier mon problème. Il est visible ici : https://www.developpez.net/forums/d1905302/general-developpement/programmati...
Je vous remercie pour l'attention que vous aurez portée à ce courriel.
Patrick
Je ferais l'essai avec la ligne suivante à la place de la ligne 7 : gcc -fPIC -o obj/6303_lib.o -c procs/6303/6303_lib.c $C8_DEV Puis ensuite à la place de la ligne 8 : gcc -shared -fPIC -o obj/lib_6303.so obj/6303_modbu.o obj/6303_mocmd.o obj/6303_emu.o obj/6303_lib.o Ensuite, il te faudra bien ne pas oublier de mettre la variable LD_LIBRARY_PATH à jour avec le chemin d'accès vers ton répertoire obj où se trouve le fichier lib_6303.so. Sinon, tu auras une erreur d'exécution quand tu lanceras l'exécutable qui a besoin de cette librairie. --JM -- To unsubscribe, e-mail: opensuse-fr+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-fr+owner@opensuse.org
Bonjour Jean-Marc et grands remerciements, Avec : 1 export C8_DEV=' -O0 … ' 2 gcc -fPIC -o obj/6303_modbu.o -c procs/6303/6303_modbu.c $C8_DEV 3 gcc -fPIC -o obj/6303_mocmd.o -c procs/6303/6303_mocmd.c $C8_DEV 4 gcc -fPIC -o obj/6303_emu.o -c procs/6303/6303_emu.c $C8_DEV 5 6 gcc -fPIC -o obj/6303_lib.o -c procs/6303/6303_lib.c $C8_DEV 3 gcc -shared -fPIC -o obj/lib_6303.so obj/6303_modbu.o obj/6303_mocmd.o \ obj/6303_emu.o obj/6303_lib.o Je n'ai pas résolu mon problème mais au moins, gcc (ou le linker) montre ce qu'il a à dire ! Et il semble bien que ce soit un problème de linker puisque parmi les erreurs, j'ai : obj/6303_mocmd.o:./src/l8.h:195 : définitions multiples de « foo » obj/6303_modbu.o:./src/l8.h:195 : défini pour la première fois ici Les messages ne sont guère plus clairs que ça, mais j'ai de quoi résoudre mon problème. Merci encore, Patrick NB: En annexe, je conclue que c'est comme ça qu'on est supposé faire, c'est à dire ne "lier" les objets qu'au dernier moment… ce qui est finalement logique puisque le linker n'est invoqué qu'à ce moment-là. ---------------------------------------------------- Le lundi 22 octobre 2018, Jean-Marc Bouché a écrit :
Je ferais l'essai avec la ligne suivante à la place de la ligne 7 : gcc -fPIC -o obj/6303_lib.o -c procs/6303/6303_lib.c $C8_DEV
Puis ensuite à la place de la ligne 8 : gcc -shared -fPIC -o obj/lib_6303.so obj/6303_modbu.o obj/6303_mocmd.o obj/6303_emu.o obj/6303_lib.o
-- To unsubscribe, e-mail: opensuse-fr+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-fr+owner@opensuse.org
participants (2)
-
Jean-Marc Bouché
-
Patrick Serru