Compilation d'un noyau linux

Résolu
neotom40 Messages postés 6 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 3 mai 2007 - 27 juil. 2006 à 17:36
neotom40 Messages postés 6 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 3 mai 2007 - 25 août 2006 à 09:43
bonjour,


Je doit compiler un noyau linux en croisé pour un PPC.


j'ai donc installé une version de fedora en double boot sur mon PC pour pouvoir le conpilé.


la fedora marche bien.
je fais la commande make gconfig ARCH=ppc la ça marche je peut configurer ma compilation.
mais lorsque je fais un make ARCH=ppc là g une erreur me disant que je n'ai pas la bonne version de binutils alors que ma version installé sur ma fedora est plus récente.

Est ce que quelqu'un peut m'aider s'il vous plait
merci d'avance à tous ce qui le porront.

6 réponses

cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
10 août 2006 à 08:47
amha, c'est beoucoup moins simple que ça.
Tu dois construire une chaine de compilation croisée ( ou ).

Ton compilateur n'est pas le seul à devoir être préparé. Il faut aussi préparer la libc. La compilation et l'édition de liens sont dépendants de l'architecture cible.

Pour simplifier cette construction, il est préférable que la distribution de travail soit la même que la distribution cible. (Si tu veux compiler un noyau debian pour ppc tu le compiles sous debian). Fedora n'est peut être pas très adaptée pour la compilation croisée. debian dispose d'un outil dpkg-cross pour ce genre de procédure.
3
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
27 juil. 2006 à 20:56
Regardes . Dans tes binutils, il n'y a peut être pas le gcc pour powerpc, ou essayes comme lui :
CC=powerpc-linux-gcc ./configure --host=ppc
0
neotom40 Messages postés 6 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 3 mai 2007
8 août 2006 à 14:26
ok je vais essayer et je te tiens au courant
merci
0
neotom40 Messages postés 6 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 3 mai 2007
24 août 2006 à 16:50
Salut AlexN



J'ai utilisé ta deuxième solution, celle ci fonctionne. J'ai réussi aprés de nombreux essais infructueux à construire un compilateur croisé pour PPC.



pour info je donne les versions utilisées     ftp://ftp.gnu.org/gnu/ :        
binutils-2.16.1   g
cc-2.95.3   
glibc-2.2.5, glibc-linuxthread-2.2.5



J'ai toujours des problèmes de compilation de mon noyau linux-2.4.32  mais j'arrive à quand meme à compiler en croisé ce qui m'a fait bien avancé.

Je vais continuer à chercher pour mes problèmes de compilation mais si quelqu'un à une idée c'est pas de refus
ld: sched.o: relocation in generic ELF (EM:20)
sched.o: ne peut lire les symboles: fichier dans un mauvais format

En forçant la compil cette erreur apparait plusieurs fois pour d'autres fichiers.o mais passe pour certains.

encore merci



 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
24 août 2006 à 18:12
Salut,

ld n'arrive pas à lire seulement certains fichiers objets. C'est curieux. La chaîne de compilation croisée n'est probablement pas complète, ou peut être que la configuration de compilation de ton noyau cible est mauvaise ou ???

Au cas où :
Quelqu'un ayant eu des pb similaires : http://www.gossamer-threads.com/lists/perl/porters/207424
Une liste de diffusion sur la compilation croisée :
http://sources.redhat.com/ml/crossgcc/
Quelques sujets qui pourraient t'aider :
(howto) http://sources.redhat.com/ml/crossgcc/2000-q2/msg00195.html
http://sources.redhat.com/ml/crossgcc/2001-q2/msg00010.html
0
neotom40 Messages postés 6 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 3 mai 2007
25 août 2006 à 09:43
Ok je regarde ca
merci
0
Rejoignez-nous