Dooophy Posté(e) le 4 juin 2007 Partager Posté(e) le 4 juin 2007 Bonjour à tous, CONTEXTE Je réalise actuellement un projet de control d'un robot via un réseau WIFI établi entre le robot et un portable. Un joystick est branché en USB sur le portable. Le robot est donc controlé par le joystick. Une distribution Fedora est installé sur le robot et sur le portable. La partie control du robot par le joystick a déjà était implémentée en Perl, mais je dois faire passer le portable sous M$ Windows. Je dois donc porter l'application deja en place. Il me parait évident qu'il faut que je conserve un maximum de choses déjà établies (toute la programmation en Perl réalisée et qui fonctionne). J'ai regardé le code déjà tapé, et visiblement il utilise des librairies propres à linux donc forcément, faut que je trouve autre chose. J'me suis donc tourné vers SDL pour pouvoir garder le control du robot avec le joystick. Mon Probleme Oui mais voila, j'voudrais faire tout ca en Perl. J'ai installé : - ActivePerl 5.8.8.820 - SDL 1.2.11 J'ai également trouvé un SDL_Perl 2.1.2 et un SDL_perl 1.20 (bisarre ces differences de version d'ailleurs). J'ai decompressé les archives, mais je ne parviens pas a les installer. Il y a des fichiers de tests dans SDL 1.2.11 comme dans le SDL_perl 2.1.2, mais visiblement, la compilation n'est pas possible pour les fichiers perl (.pl). En fait, tout ce qui se trouve dans la 1.20 est du .c, .h et autre fichiers pour de la programmation en C ou C++. J'ai testé en installant Dev-c++, en suivant des tutoriaux (genre sur le siteduzero). Ok, ca fonctionne (le fichier testjoystick.c compile et s'execute) mais ce qui m'interesse c'est de pouvoir faire tout ca en Perl. Comme dit plus haut, j'trouve un testjoystick.pl dans un repertoire test de 2.1.2 ou dans le 1.20 (comme j'avais trouvé un testjoystick.c dans le repertoire test de SDL 1.2.11), mais voila, je pense que j'ai pas du installer le module SDL_perl, car quand je le lancais, j'obtenais un message "can't open [...] SDL j'sais plus quoi" Ce que j'ai tenté J'regarde le README du module SDL_perl 2.1.2 ou je peux lire, entre autre "Prerequisites: SDL Perl recommends installing the following libraries available from http://www.libsdl.org/ prior to installing: SDL-1.2.6 smpeg-0.4.4 SDL_image-1.2.2 SDL_gfx-2.0.3 SDL_mixer-1.2.5 SDL_net-1.2.4 SDL_ttf-2.0.5 Additionally the following Perl modules should be installed: Module-Build-0.22 Test-Simple-0.47" J'me suis dit, ok, j'tente d'installer le module build 0.22 J'recupere donc ce module, j'desarchive, et je regarde le README de ce module. La je vois : taper " perl Build.PL Build Build test Build install" alors je m'execute sagement, et la compilation de Build.PL me dit que j'ai pas tout les prérequis pour continuer l'installation. Un probleme de Yaml support (j'regarde vite fait, bon, ca n'a pas l'air tres important... j'ai donc pas installé ce "support), et un probleme de CBuilder C_support... Ca, ca a l'air deja plus chiant. Ils me conseil de jeter un coup d'oeil a ExtUtils-CBuilder J'ai essayé de recuperer ce nouveau module (j'avoue que j'me demandais si c'était vraiment installable tout ces trucs !!!). Donc rebelote, decompression, README " perl Makefile.PL make make test make install" j'compile donc le makefile.PL... ca, ca va, mais make n'est pas une fonction reconnue, donc j'peux pas lancer les 3 lignes suivantes... Au point ou j'en suis, j'ai tenté d'installer le module "Build" juste au dessus donc j'tape build => Ca a l'air d'etre bon build test => Certains trucs sont pas installé, dû au fait que j'ai pas le YAML Support et que j'ai pas le Cbuilder C_support => installation partielle donc build install => j'sais pas trop ce qu'il fait, mais ca a l'air de marcher J'remonte donc a mon module SDL Perl 2.1.2. J'tente la compilation de mon fichier testjoystick.pl, mais maintenant l'erreur est "can't locate SDL.pm in @INC (@INC contains: c:/Perl/site/lib c:/Perl/lib .) at testjoystick.pl line 11 etc etc..." (en fait, c'est le meme message d'erreur qu'avant... j'ai donc l'impression de ne rien avoir fait !) Au point ou j'en étais, j'ai tenté la methode "bourrine". J'ai copié les fichiers qu'il me demandait la où il me le demandait Donc SDL.pm SDL_perl.pm puis autosplit.ix dans auto/SDL mais la, j'arrive sur "can't locate loadable object for module SDL_perl in @INC (@INC contains etc...)" La parole est a vous ! Voila ou j'en suis et j'avoue que j'suis bien perdu et ne sais plus trop vers quoi me tourner (si ce n'est vers des forums comme celui ci !) J'espere que j'ai été assez clair dans mes propos et que vous, aussi expérimenté que vous etes, pourrez m'aider dans ce debut de projet qui me donne du fil a retordre des les premiers jours/semaines. Merci d'avance Dooophy PS : J'peux fournir le fichier testjoystick.pl si necessaire Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 4 juin 2007 Partager Posté(e) le 4 juin 2007 Une distribution Fedora est installé sur le robot et sur le portable.La partie control du robot par le joystick a déjà était implémentée en Perl, mais je dois faire passer le portable sous M$ Windows. Pour une raison technique ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dooophy Posté(e) le 5 juin 2007 Auteur Partager Posté(e) le 5 juin 2007 Pour des raisons de simplicité d'utilisation pour l'utilisateur "de base"... Les gens sont plus a l'aise quand ils voient un menu démarrer que quand ils sont sous Linux. Mon superviseur veut donc le passer sous Windows... c'est la seule "vraie" raison donc non, aucun pb technique... si ce n'est que ca m'en pose de devoir faire le portage Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.