#1 Le 16/03/2006, à 09:11
- Sunsimilia
(Resolu) Cross-compilateur AMD-K8 -> i586
Voila je developpe actuellement sur mon pc (AMD 64 3500+) sur lequel j'ai un Ubuntu 64 or il se trouve que mon programme est destinée a une architecture i586.
Les compilateur que j'utilise pour cela sont binutils et gcc.
J'ai recupere les sources de gcc et binutils et veux les compiler pour former mon cross-compilateur:
d'abord je fais pour binutils "./configure i586-pc-gnu --prefix=cross"
et j'ai alors une rreur de type "gcc not work" alors que j'ai gcc installé correctment sur ma machine.
J'ai tente avec les differente version de gcc avec des "export CC=gcc-x" ou x etait les version de gcc testées, mais rien.
Pourriez vous m'aider s'il vous plait.
Sinon je persisterais de mon cote et vous transmettrais mes resultats si j'y arrive.
Merci
Dernière modification par Sunsimilia (Le 01/11/2006, à 18:33)
Douvan ke nou ka ay.
Hors ligne
#2 Le 16/03/2006, à 12:44
- ianic
Re : (Resolu) Cross-compilateur AMD-K8 -> i586
tu peux poster le message pour plus de précision et regarder le config.log qui te dira ce qui n'a pas fonctionné.
Hors ligne
#3 Le 17/03/2006, à 23:29
- Sunsimilia
Re : (Resolu) Cross-compilateur AMD-K8 -> i586
Je compile mon binutils avec:
./configure --prefix=/home/coco/CrossCompil/binutils --target=i586-pc-gnu
Puis je fais un make et un make install.
Apres je compil mon gcc avec:
CFLAGS="-02 -Dinhibit_libc"
./configure --target=i586-gnu --with-as=/home/coco/CrossCompil/binutils/i586-pc-gnu/bin/as --with-ld=/home/coco/CrossCompil/binutils/i586-pc-gnu/bin/ld --with-gnu-as --with-gnu-ld --enable-languages=c --disable-shared --disable-multilib --disable-nls --enable-threads=single --prefix=/home/coco/CrossCompil/gcc
Apres quand je fais make j'ai ce message d'erreur:
echo timestamp > stmp-int-hdrs
make[2]: *** Pas de règle pour fabriquer la cible « /home/coco/CrossCompil/gcc/bin/i586-gnu-nm », nécessaire pour « stamp-nm ». Arrêt.
make[2]: quittant le répertoire « /home/coco/CrossCompil/gcc-4.1.0/host-x86_64-unknown-linux-gnu/gcc »
make[1]: *** [all-gcc] Erreur 2
make[1]: quittant le répertoire « /home/coco/CrossCompil/gcc-4.1.0 »
make: *** [all] Erreur 2
Les versions que je compile de binutils et gcc sont respectivement 2.16.1 et 4.1.0.
Sinon les versions installer sur mon Ubuntu sont 2.16.1 et 4.0.1.
Douvan ke nou ka ay.
Hors ligne
#4 Le 18/03/2006, à 11:02
- ianic
Re : (Resolu) Cross-compilateur AMD-K8 -> i586
Bon regardes dans les makefile les règles pour stamp-nm et i586-gnu-nm. Il trouve pas la dernière règle... p-e un pb de génération au niveau du configure.
J'ai pas le configure de gcc sous les yeux, mais tu es sûr des tes options --with-gnu-as --with-gnu-ld, sachant que tu spécifies les path pour as et ld ? (je ne sais pas ce que font ces options c'est une question pour savoir)
Hors ligne
#5 Le 18/03/2006, à 18:58
- Sunsimilia
Re : (Resolu) Cross-compilateur AMD-K8 -> i586
Pour les options je ne sais pas vraiment car c'est un tutoriel que j'ai suivi mais apperement le --with-gnu-as et --with-gnu-ld ne sont pas en cause car juste avant as et ld sont utilise sans problemes...
Sinon je me demande si mon prbleme ne viendrais pas des headers faudrais pt etre que je desactive les headers...
Douvan ke nou ka ay.
Hors ligne
#6 Le 19/03/2006, à 13:34
- ianic
Re : (Resolu) Cross-compilateur AMD-K8 -> i586
Je suis d'accord que ton pb n'a sans doutes pas à voir avec les options gnu-ld et gnu-as.
Mais ce qui me gène tout de même c'est que tu définis ton chemin vers tes as et ld perso et je me demande si l'option gnu-as et gnu-ld ne va justement as annuler ces définitions pour prendre les as et ld standards.
Hors ligne