Bonjour,
Je vous sollicite car je rencontre un problème sur mon projet.
En effet ce dernier a était développé en C sous un environnement KEIL.
Il y a une librairie interfacée à l'aide d'un fichier interface.h. Cette librairie est static, elle et compilé puis linké avec mes fichiers users appli de mon projet.
Ce projet a était compilé sur ma carte cible et j'ai pu validé son bon fonctionnement.
Aujourd'hui je souhaite utilisé l'environnement GCC car il est gratuit. Pour cela j'utilise le logiciel simplicité studio qui inclut un IDE Eclipse.
Le compilateur est GNU 4.9.3.
Je souhaite compilé le tout en Debug afin de valider pas à pas le fonctionnement du code compilé sous GCC.
La deuxième étape consistera à passer le tout en Release
Mon problème:
Lorsque je compile la console me retourne un problème au niveau du linker.
Dans un premier temps j'ai réussi a compilé ma librairie static en debug.
Puis j'ai créé un projet reprenant mes fichiers sources user apli et j'ai inclut dans un dossier "Library" mon fichier .a fraîchement généré.
J'ai ouvert mon projet sous eclipse et paramétrer le linker afin de linker ma librairie static.
La console me retourne une erreur dans ma librairie: "Undefined reference" sur 8 fonctions qui sont bien déclarer et appeler dans ma librairie mais qui qui sont référencé dans un fichier callback de mon projet user appli.
J'ai revu tout le paramétrage du compilateur sous éclipse, relu les options du linker dans la doc GCC je ne vois toujours pas pourquoi il ne fait pas le lien entre les fonctions déclarées en lib et référencées en userappli.
Est ce qu'il y a une subtilité a connaitre sous GCC pour ce genre de travaux?
Je tiens a préciser que je n'ai pas oublié d'inclure les librairies et includes dont j'ai besoin pour faire tourner ma carte (GCC, micro-controleurs, Configuration RTX)
Je vous remercie d'avance de l'intérêt que vous prêterez à mon problème.
Cordialement
-----