#1 Le 21/05/2007, à 18:34
- gusgus
compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
Quand je compile gcc-4.0.3 j'obtient l'erreur suivante a la fin:
/tools/i686-pc-linux-gnu/bin/ld: cannot find -lc
collect2: ld returned 1 exit status
make[3]: *** [libgcc_s.so] Error 1
make[3]: Leaving directory `/home/lfs/Desktop/gcc-4.0.3/gcc-build/gcc'
make[2]: *** [libgcc.a] Error 2
make[2]: Leaving directory `/home/lfs/Desktop/gcc-4.0.3/gcc-build/gcc'
make[1]: *** [stage1_build] Error 2
make[1]: Leaving directory `/home/lfs/Desktop/gcc-4.0.3/gcc-build/gcc'
make: *** [bootstrap] Error 2
lfs@serveur:~/Desktop/gcc-4.0.3/gcc-build$
apres avoir fait les commandes suivantes:
lfs@serveur:~/Desktop/gcc-4.0.3/gcc-build$ /home/lfs/Desktop/gcc-4.0.3/configure --prefix=/tools --with-local-prefix=/tools --disable-nls --enable-shared --enable-languages=c
puis
lfs@serveur:~/Desktop/gcc-4.0.3/gcc-build$ make bootstrap
Je comprend vraiment pas.
Je suis sous edgy.
Dernière modification par gusgus (Le 23/05/2007, à 18:15)
Hors ligne
#2 Le 21/05/2007, à 18:39
- Watchwolf
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
il te manque la "libc-dev" peut etre ?
Hors ligne
#3 Le 21/05/2007, à 19:43
- gusgus
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
lu.
j'ai essayer et sa me donne sa:
root@serveur:/home/lfs# apt-get install libc-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libc-dev is a virtual package provided by:
libc6-dev 2.4-1ubuntu12.3
You should explicitly select one to install.
E: Package libc-dev has no installation candidate
root@serveur:/home/lfs# apt-get install libc6-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libc6-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 85 not upgraded.
J'en conclu donc que libc-dev est a jour.
D'ailleur j'ai libc.a dans /usr/lib.
Il arrive peut-etre pas a le voir...
Hors ligne
#4 Le 21/05/2007, à 20:33
- Link31
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
Une question, pourquoi compiler GCC ? Si c'était encore pour avoir une version plus récente que celle des dépôts, ou pour changer des options de compilation... Mais la version de Edgy est précisément la 4.0.3 et tes options ont pour principal effet d'enlever le support du C++ (!).
edit : j'ai rien dit, je n'avais pas vu le prompt "lfs". Mais si tu compiles une LFS, selon la page du livre où tu es, l'environnement peut être totalement chrooté et cela ne sert plus à rien d'installer quoi que ce soit avec apt-get. Si l'environnement n'est pas encore chrooté, ça veut dire que l'installation de GCC sous Ubuntu est défectueuse. Essaie sudo apt-get install build-essential.
Dernière modification par Link31 (Le 21/05/2007, à 20:36)
Hors ligne
#5 Le 22/05/2007, à 08:25
- gusgus
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
salut.
J'ai dejas essayer build-essential.
libc.so et libc.a sont situer dans /usr/lib.Comment dire au compilo d'aller les cherché ici?
Et chrooté sa veut dire quoi?que j'ai les autorisations?
Hors ligne
#6 Le 22/05/2007, à 20:04
- gusgus
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
up
meme question:quel argument donner a /configure(ou a make) pour qu'il aye chercher les libs dans /usr/lib?
Hors ligne
#7 Le 23/05/2007, à 18:15
- gusgus
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
up:)
Hors ligne
#8 Le 23/05/2007, à 19:18
- pef
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
regarde dans ce que donne ./configure --help, normallement c'est indiqué dedans
Hors ligne
#9 Le 23/05/2007, à 20:24
- Link31
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
Et chrooté sa veut dire quoi?que j'ai les autorisations?
Non, le chroot signifie que le répertoire où tu es est totalement isolé du reste du système d'exploitation. On s'en sert souvent comme protection, ou pour tester des programmes dangereux, ou encore pour créer des distributions Linux (comme dans le cas de LFS). Tout ce qui n'est pas dans ce répertoire et ses sous-dossiers est inaccessible.
Tu as installé build-essential, mais si tu es déjà à l'étape du chroot, ça ne sert plus à rien. Je te conseille de relire attentivement le livre LFS, tu as du manquer une étape.
Hors ligne
#10 Le 24/05/2007, à 17:20
- gusgus
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
c'est pas marqué dans configure --help(ou alors j'ai bigler ).Je mais quoi comme commande pour lui rajouter un chemin d'acces a /usr/bin ?
Sinon chroot c'est clair pour moi maintenant.Merci.
Hors ligne
#11 Le 24/05/2007, à 17:50
- Link31
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
Pour rajouter /usr/lib dans le chemin de recherche des bibliothèques, c'est :
export LD_LIBRARY_PATH=/usr/lib
Cela ne reste valable que pendant la même session de shell.
Normalement /usr/lib est déjà un chemin de recherche par défaut, mais essaie toujours. Cependant, si tu es dans le chroot, ça va pointer vers le dossier usr/lib à l'intérieur du dossier du chroot, et ça ne fonctionnera probablement pas.
Hors ligne
#12 Le 24/05/2007, à 20:00
- gusgus
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
Je vai essayer sa demain merci.
Sinon je suis pas en chroot (enfin il me semble)je suis que a la premiere passe de la compilation de gcc.Il est donc obliger de chercher les dependances dans ubuntu!
Hors ligne
#13 Le 26/05/2007, à 07:06
- gusgus
Re : compilation de gcc bug edit :metre /usr/lib dans les rep de linkage
merci a vous tous! maintenant sa marche :):):):):)
Hors ligne