View previous topic :: View next topic |
Author |
Message |
the_nicam n00b

Joined: 28 Aug 2009 Posts: 6 Location: Switzerland
|
Posted: Fri Aug 28, 2009 7:54 pm Post subject: [GCC Compilation] Erreur pendant la compilation de GCC |
|
|
Bonjours.
Je viens de faire l'acquisition d'un serveur, J'ai installé Gentoo 2007 64Bit
Détails du CPU:
Quote: |
processor : 7
vendor_id : GenuineIntel
cpu family : 6
model : 23
model name : Intel(R) Xeon(R) CPU X3360 @ 2.83GHz
stepping : 7
cpu MHz : 2830.000
**
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl pni monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm
**
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
|
Version de GCC Actuelle et update:
Quote: |
sys-devel/gcc
Latest version available: 4.4.1
Latest version installed: 4.3.2-r3
|
Kernel
Quote: |
2.6.27.10-64 x86_64 Intel(R) Xeon(R) CPU X3360 @ 2.83GHz GenuineIntel GNU/Linux
|
Erreur pendant la compilation de GCC
Quote: |
make[5]: entrant dans le répertoire « /var/tmp/portage/sys-devel/gcc-4.4.1/work/build/x86_64-pc-linux-gnu/32/libgcc »
# If this is the top-level multilib, build all the other
# multilibs.
/var/tmp/portage/sys-devel/gcc-4.4.1/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.4.1/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -g -O2 -pipe -m32 -O2 -g -O2 -pipe -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wcast-qual -Wold-style-definition -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. -I../../.././gcc -I/var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc -I/var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc/. -I/var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc/../gcc -I/var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc/../include -I/var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_TLS -o _muldi3.o -MT _muldi3.o -MD -MP -MF _muldi3.dep -DL_muldi3 -c /var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc/../gcc/libgcc2.c \
-fvisibility=hidden -DHIDE_EXPORTS
In file included from /usr/include/features.h:354,
from /usr/include/stdio.h:28,
from /var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc/../gcc/tsystem.h:87,
from /var/tmp/portage/sys-devel/gcc-4.4.1/work/gcc-4.4.1/libgcc/../gcc/libgcc2.c:29:
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: Aucun fichier ou dossier de ce type
make[5]: *** [_muldi3.o] Erreur 1
make[5]: quittant le répertoire « /var/tmp/portage/sys-devel/gcc-4.4.1/work/build/x86_64-pc-linux-gnu/32/libgcc »
make[4]: *** [multi-do] Erreur 1
make[4]: quittant le répertoire « /var/tmp/portage/sys-devel/gcc-4.4.1/work/build/x86_64-pc-linux-gnu/libgcc »
make[3]: *** [all-multi] Erreur 2
make[3]: quittant le répertoire « /var/tmp/portage/sys-devel/gcc-4.4.1/work/build/x86_64-pc-linux-gnu/libgcc »
make[2]: *** [all-stage1-target-libgcc] Erreur 2
make[2]: quittant le répertoire « /var/tmp/portage/sys-devel/gcc-4.4.1/work/build »
make[1]: *** [stage1-bubble] Erreur 2
make[1]: quittant le répertoire « /var/tmp/portage/sys-devel/gcc-4.4.1/work/build »
make: *** [bootstrap-lean] Erreur 2
*
* ERROR: sys-devel/gcc-4.4.1 failed.
* Call stack:
* ebuild.sh, line 49: Called src_compile
* environment, line 4892: Called toolchain_src_compile
* environment, line 5418: Called gcc_src_compile
* environment, line 3093: Called gcc_do_make
* environment, line 2883: Called die
* The specific snippet of code:
* emake LDFLAGS="${LDFLAGS}" STAGE1_CFLAGS="${STAGE1_CFLAGS}" LIBPATH="${LIBPATH}" BOOT_CFLAGS="${BOOT_CFLAGS}" ${GCC_MAKE_TARGET} || die "emake failed with ${GCC_MAKE_TARGET}";
* The die message:
* emake failed with bootstrap-lean
*
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/sys-devel/gcc-4.4.1/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/sys-devel/gcc-4.4.1/temp/environment'.
|
Make.conf
Quote: |
cat /etc/make.conf
CFLAGS="-O2 -pipe -march=nocona"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
GENTOO_MIRRORS="http://mirror.ovh.net/gentoo-distfiles/ ftp://mirror.ovh.net/gentoo-distfiles/"
USE="imap libwww maildir sasl -ipv6 ssl jpg jpeg png gd gd2 -X mmx sse sse2 -gtk -sdl -nptl php php5 mysql apache2 rdynamic netboot ldap"
FEATURES="-sandbox parallel-fetch"
|
Profile
Quote: |
/etc/make.profile -> portage/profiles/default/linux/amd64/2008.0/server/
|
J'ai pensé à une erreur de profile ou de march mais après quelques test je ne trouve pas _________________ THE_NICAM |
|
Back to top |
|
 |
netfab Veteran


Joined: 03 Mar 2005 Posts: 1734 Location: 127.0.0.1
|
Posted: Fri Aug 28, 2009 8:03 pm Post subject: |
|
|
Quote: |
> /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or
> directory
This means you don't have 32 bit glibc headers installed. gcc on x86_64
is multilibbed by default. Install the corresponding package from your
distro, or --disable-multilib if you're okay with a compiler that
doesn't support 32 bit code.
|
http://gcc.gnu.org/ml/fortran/2008-09/msg00118.html |
|
Back to top |
|
 |
the_nicam n00b

Joined: 28 Aug 2009 Posts: 6 Location: Switzerland
|
Posted: Fri Aug 28, 2009 8:10 pm Post subject: |
|
|
Merci beaucoup je comprend enfin l'erreur.
Peut-tu me dire où se place le "--disable-multilib" ou comment installer les "32 bit glibc headers" _________________ THE_NICAM |
|
Back to top |
|
 |
netfab Veteran


Joined: 03 Mar 2005 Posts: 1734 Location: 127.0.0.1
|
Posted: Fri Aug 28, 2009 9:43 pm Post subject: |
|
|
Il faut prendre le problème dans l'autre sens :
https://bugs.gentoo.org/show_bug.cgi?id=246446#c2 wrote: |
gnu/stubs-32.h is provided by glibc. if yours isnt providing it, you dont have
a multilib glibc. that means your gcc wont build with multilib support, so you
shouldnt have a multilib profile selected.
|
Donc :
Quote: |
$ ls -l /usr/portage/profiles/default/linux/amd64/10.0/
total 24
drwxr-xr-x 2 portage portage 4096 août 6 08:41 desktop
drwxr-xr-x 2 portage portage 4096 août 6 08:41 developer
-rw-r--r-- 1 portage portage 2 août 17 20:54 eapi
drwxr-xr-x 2 portage portage 4096 août 6 08:41 no-multilib
-rw-r--r-- 1 portage portage 29 août 6 08:33 parent
drwxr-xr-x 2 portage portage 4096 août 6 08:41 server
|
|
|
Back to top |
|
 |
the_nicam n00b

Joined: 28 Aug 2009 Posts: 6 Location: Switzerland
|
Posted: Fri Aug 28, 2009 9:58 pm Post subject: |
|
|
OK, donc je ne comprend plus rien maintenant je dois faire quoi avec ça ? _________________ THE_NICAM |
|
Back to top |
|
 |
Leander256 l33t


Joined: 05 Jul 2003 Posts: 909 Location: Singapour
|
Posted: Sat Aug 29, 2009 1:00 am Post subject: |
|
|
Tu n'aurais pas changé de profil en cours d'installation par hasard? Est-ce que tu peux donner le résultat de la commande:
Code: | emerge -vp glibc gcc |
Je ne sais pas si ça a changé depuis mais la dernière fois que j'ai voulu passer d'un profil no-multilib à un profil multilib, ça a été assez laborieux. |
|
Back to top |
|
 |
the_nicam n00b

Joined: 28 Aug 2009 Posts: 6 Location: Switzerland
|
Posted: Sat Aug 29, 2009 11:15 am Post subject: |
|
|
Quote: |
[ebuild R ] sys-libs/glibc-2.9_p20081201-r2 USE="(multilib) nls -debug -gd -glibc-omitfp (-hardened) -profile (-selinux) -vanilla" 0 kB
[ebuild R ] sys-devel/gcc-4.3.2-r3 [4.1.2] USE="fortran mudflap (multilib) nls nptl openmp (-altivec) -bootstrap -build -doc (-fixed-point) -gcj -gtk (-hardened) -ip28 -ip32r10k -libffi -multislot (-n32) (-n64) -nocxx -nopie -objc -objc++ -objc-gc -test -vanilla" 0 kB
|
Même après la remise a neuf du serveur par le fournisseur des que je veux emerger GCC sa me refais l'erreur...
Il doit y avoir un problème ailleurs... _________________ THE_NICAM |
|
Back to top |
|
 |
the_nicam n00b

Joined: 28 Aug 2009 Posts: 6 Location: Switzerland
|
Posted: Sat Aug 29, 2009 11:53 am Post subject: |
|
|
Après quelques essais, je suis enfin parvenu à compiler GCC.
J'ai fait:
Quote: |
emerge glibc -1
emerge gcc -1
gcc-config x86_64-pc-linux-gnu-4.3.2 // pour choisir le nouveau compilateur
emerge gcc // pour que GCC se compile lui même avec la nouvelle version (il y a peut-être de l'optimisation...)
emerge --update system -av // pour tout recompiler (system) avec le nouveau GCC
|
Et voila, plus d'erreur... je n'ai pas compris pourquoi. _________________ THE_NICAM |
|
Back to top |
|
 |
netfab Veteran


Joined: 03 Mar 2005 Posts: 1734 Location: 127.0.0.1
|
Posted: Sat Aug 29, 2009 5:57 pm Post subject: |
|
|
Probablement que ta glibc au départ était compilée en no-multilib.
Et comme tu es sur un profil amd64/2008.0/server, qui je suppose est un profil multilib, une incompatibilité apparait.
Vu que tu recompiles la glibc en premier, elle passe en multilib, les headers glibc 32-bit pointent le bout de leur nez, et gcc se recompile comme il faut.
Une autre solution aurait été de passer ton profil à amd64/2008.0/no-multilib pour être en pur 64-bit.
Tout ceci n'est que spéculation, je n'ai jamais encore joué avec l'amd64. |
|
Back to top |
|
 |
the_nicam n00b

Joined: 28 Aug 2009 Posts: 6 Location: Switzerland
|
Posted: Sat Aug 29, 2009 6:08 pm Post subject: |
|
|
Le problème est que j'ai besoin du support 32bit car quelques programmes (serveurs de jeux) ne sont qu'expérimentaux en 64bit. _________________ THE_NICAM |
|
Back to top |
|
 |
Pixys l33t


Joined: 23 May 2005 Posts: 669
|
Posted: Sat Aug 29, 2009 8:14 pm Post subject: Re: [GCC Compilation] Erreur pendant la compilation de GCC |
|
|
the_nicam wrote: | Je viens de faire l'acquisition d'un serveur, J'ai installé Gentoo 2007 64Bit |
Pourquoi une 2007 ? Ça sent le serveur OVH/kimsufi, non ? |
|
Back to top |
|
 |
|