Bonjour à tous!
Je me présente rapidement ainsi que le projet sur lequel je travaille.
Je suis étudiant et je travaille actuellement sur le pilotage d'un robot via une Nintendo DS. Le but du jeu est d'utiliser des interfaces innovantes pour agir sur un système. Le système étant un robot (Pekee de chez WanyRobotics).
Voilà pour le background 
Autant le developpement sur la console se passe bien (utilisation de devkitpro et de la librairie PALib, code en C/C++, compilation avec un makefile), autant j'ai du mal avec le robot.
Le robot peut etre piloté avec un programme sous linux dont j'ai le code source complet (utilise également un makefile).
Je souhaite utiliser le code linux pour le porter sur la DS.
Quand je compile mon programme avec seulement un
#include "lib-pekee/libRobot/WRobotPekee.h" //inclusion des librairies du robot
tout ce passe bien.
Mais dès que je veux utiliser la librairie en déclarant un objet défini dedans, par exemple
WRobotPekee pekee = WRobotPekee(); //Déclaration d'un objet Pekee
J'obtiens une erreur à la compilation, plutot au linkage même.
1 2
| d:/devkitPro/PA_Pekee/Main-boutons-cible-formes-spatiale/source/main.cpp:39: undefined reference to `WRobotPekee::WRobotPekee()'
d:/devkitPro/PA_Pekee/Main-boutons-cible-formes-spatiale/source/main.cpp:183: undefined reference to `WRobotPekee::~WRobotPekee()' |
On m'a dit qu'il fallait que je "cree une librairie statique (.a)" pour l'intégrer dans le makefile du programme DS. Seulement je ne trouve pas comment creer ce genre de libairie, je n'y connais rien en makefile (enfin si, maintenant avec google j'ai appris des choses). Sachant que mon compilateur pour DS fait du code pour arm.
Voila le makefile du projet DS :
http://ftpbobby.free.fr/Temp/Makefile%20ds.txt
Voila le makefile du programme linux du robot :
http://ftpbobby.free.fr/Temp/Makefile%20pekee.txt
Le sujet est peut etre complexe, mais je galère la dessus depuis 3 mois, je peux donner plus de détails évidemment si besoin.
Je vous remercie d'avance
Partager