Cross Compiler perl pour les BRAS

Je suis d'essayer de faire de la compilation croisée de l'interpréteur perl pour une architecture ARM (FriendlyARM Micro2440). Je suis à l'aide de la ARM-Linux GCC 4.4.3 cross-compilateur fourni par le fabricant. Le conseil d'administration est en cours d'exécution Linux 2.6.

J'ai été en mesure de cross-compiler une base application "Hello World" avec succès, et il a couru sur la machine cible.

J'ai téléchargé le perl v5.12.3 source. J'ai été capable de faire une activité normale de la compilation de perl pour Ubuntu. Je suis en train d'essayer de faire un cross-compilation pour les BRAS de conseil. Je fais de la perl-5.12.3/Croix-dossier dans le dossier source de téléchargement.

make patch réussi, mais quand je lance make perl il échoue avec cette

LD_LIBRARY_PATH=/home/reed022/.local/share/Trash/files/perl-5.2.12.3 arm-linux-gcc  -o miniperl \
        gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o   \
        miniperlmain.o opmini.o perlmini.o -lnsl -ldl -lm -lcrypt -lutil -lc 
LD_LIBRARY_PATH=/home/reed022/.local/share/Trash/files/perl-5.2.12.3  ./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
./miniperl: 1: Syntax error: word unexpected (expecting ")")

Je pense que la partie pertinente de la production est la ./miniperl -w -Ilib -MExporter -e '<?>' || make minitest partie. Si je ne suis pas sûr. Il semble confus pour moi que la croix-environnement de compilation voudrais essayer de faire des tests, car c'est le ciblage d'un autre système que celui qu'il est en cours de construction sur.

Je suis complètement perdu, comme l'endroit où aller à partir d'ici. Les personnes à qui j'ai parlé n'ont pas eu beaucoup d'expérience avec le cross-compiler des programmes.

Mise à JOUR
J'ai décidé de supprimer la source perl dossier et re-extraire, pensant que la précédente compilation de perl pour Ubuntu en machine hôte pourrait avoir été jouer avec le courant de la cross-compilation. Je suis maintenant une autre erreur similaire.

`sh  cflags "optimize='-O2'" generate_uudmap.o` -fexpensive-optimizations -fomit-frame-pointer -O2 -march=armv4 -mtune=strongarm1100 generate_uudmap.c
      CCCMD =  arm-linux-gcc -DPERL_CORE -c  -fexpensive-optimizations -fomit-frame-pointer -O2 -march=armv4 -mtune=strongarm1100  -O2 -Wall 
arm-linux-gcc -o generate_uudmap  generate_uudmap.o -lnsl -ldl -lm -lcrypt -lutil -lc 
./generate_uudmap uudmap.h bitcount.h
./generate_uudmap: 1: Syntax error: word unexpected (expecting ")")
make[1]: *** [bitcount.h] Error 2
make[1]: Leaving directory `/home/reed022/Downloads/perl-5.12.3'
make[1]: Entering directory `/home/reed022/Downloads/perl-5.12.3'
make[1]: *** No rule to make target `more'.  Stop.
make[1]: Leaving directory `/home/reed022/Downloads/perl-5.12.3'
make: *** [perl] Error 2
N'a jamais fait cela correctement, mais vous pourriez vouloir vérifier la OpenEmbedded projet. Ils fournissent de construire un cadre pour la création d'embedded Linux distros. wiki.openembedded.net/index.php/Main_Page
Le makefile est clairement en essayant de lancer votre BRAS binaires sur votre (Intel?) construire la machine. (Je suppose que le nombre magique ne correspond à aucune connue fichier exécutable de type, de sorte que le shell tente de l'exécuter comme un script shell et donne l'erreur bizarre de vous voir). Il doit y avoir quelque chose de mal avec votre compilation croisée de l'installation.

OriginalL'auteur treed | 2011-03-28