Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
emerge -uND => cross-x86_64-pc-linux-gnu/gcc-3.4.5 failed
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64
View previous topic :: View next topic  
Author Message
MSc
n00b
n00b


Joined: 31 Dec 2005
Posts: 16

PostPosted: Sun Jan 22, 2006 6:10 pm    Post subject: emerge -uND => cross-x86_64-pc-linux-gnu/gcc-3.4.5 failed Reply with quote

Hi all,
not sure if "AMD64" is the right area, but my prob is link to the 64 bit crossdev environment.

Since a few days any emerge including the --newuse options fails, because the system wants to update the x86_64 gcc compiler (+fortran use flag was added during one of the system updates before).
The emerge output looks like the following:
Code:
...
 *   90_all_uclibc-conf.patch ...                                                                                             [ ok ]
 *   91_all_uclibc-locale.patch ...                                                                                           [ ok ]
 *   92_all_uclibc-locale-configure.patch ...                                                                                 [ ok ]
 * Done with patching
 * Applying stub patch for htb ...                                                                                            [ ok ]
 * Applying gcc-3.4.5-ssp.patch ...                                                                                           [ ok ]

!!! ERROR: cross-x86_64-pc-linux-gnu/gcc-3.4.5 failed.
!!! Function libc_has_ssp, Line 491, Exitcode 0
!!! '//lib64/libc.so.6' was detected w/out ssp, that sucks (a lot)
!!! If you need support, post the topmost build error, NOT this status message.

I've no clue what the reason for the error is, searching the forum didn't help me understanding what's behind ssp.
Setting a "-fortran" won't really fix it, because this x86 system is used for/with distcc to compile AMD64 apps.

gcc-config -l information:
Code:
 [1] i686-pc-linux-gnu-3.4.4 *
 [2] i686-pc-linux-gnu-3.4.4-hardened
 [3] i686-pc-linux-gnu-3.4.4-hardenednopie
 [4] i686-pc-linux-gnu-3.4.4-hardenednopiessp
 [5] i686-pc-linux-gnu-3.4.4-hardenednossp
 [6] x86_64-pc-linux-gnu-3.4.5 *
 [7] x86_64-pc-linux-gnu-3.4.5-hardened
 [8] x86_64-pc-linux-gnu-3.4.5-hardenednopie
 [9] x86_64-pc-linux-gnu-3.4.5-hardenednopiessp
 [10] x86_64-pc-linux-gnu-3.4.5-hardenednossp


Emerge --info shows:
Code:
Portage 2.0.54 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r2, 2.6.15-gentoo-r1 i686)
=================================================================
System uname: 2.6.15-gentoo-r1 i686 Pentium III (Katmai)
Gentoo Base System version 1.6.14
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -ffast-math -funroll-all-loops -march=pentium3 -mfpmath=sse -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -ffast-math -funroll-all-loops -march=pentium3 -mfpmath=sse -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distcc distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://pandemonium.tiscali.de/pub/gentoo/ http://gentoo.mirror.solnet.ch http://ftp.du.se/pub/os/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LINGUAS="de en"
MAKEOPTS="-j15"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 apache2 apm arts avi berkdb bitmap-fonts bzip2 crypt cups curl distcc eds emboss encode expat foomaticdb fortran gdbm gif gmp gpm gstreamer gtk2 idn imlib innodb java jpeg kerberos ldap libg++ libwww mad mhash mikmod motif mp3 mpeg mysql ncurses nls nptl oav ogg oggvorbis oss pam pcre pdflib perl php png python quicktime readline samba sdl spell sse ssl tcpd tiff truetype truetype-fonts type1-fonts udev vhosts vorbis winbind xml xml2 xmms xv zlib linguas_de linguas_en userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS

Tried already emerge sync, no luck, other packages can be compiled without errors (so far :?).

Any help is welcome!

bye
Markus
Back to top
View user's profile Send private message
MSc
n00b
n00b


Joined: 31 Dec 2005
Posts: 16

PostPosted: Mon Jan 23, 2006 7:57 am    Post subject: Reply with quote

Short update:
It's still not working. :(

A "fixpackages" and an update of sys-devel/crossdev from 0.9.11-r1 -> 0.9.12 didn't change anything regarding the gcc rebuild.

Bye

Markus
Back to top
View user's profile Send private message
limn
l33t
l33t


Joined: 13 May 2005
Posts: 997

PostPosted: Tue Jan 24, 2006 3:17 pm    Post subject: Reply with quote

MSc wrote:
Setting a "-fortran" won't really fix it, because this x86 system is used for/with distcc to compile AMD64 apps.

Have you tested that the failure and the flag are directly connected? Will it compile with the fortran flag disabled?
Back to top
View user's profile Send private message
MSc
n00b
n00b


Joined: 31 Dec 2005
Posts: 16

PostPosted: Tue Jan 24, 2006 4:08 pm    Post subject: Reply with quote

Hi limn,
Thanks for the reply!
Adding a "-fortran" to the x86 USE flags in my /etc/make.conf changes the the emerge world -uND (pv) output from
Code:
These are the packages that I would merge, in order:

Calculating world dependencies ...done!
[ebuild   R   ] cross-x86_64-pc-linux-gnu/gcc-3.4.5  (-altivec) -bootstrap -boundschecking -build +fortran* -gcj -gtk -hardened -ip28 (-multilib) -multislot (-n32) (-n64) +nls -nocxx -nopie -nossp -objc -vanilla 27,703 kB [1]

Total size of downloads: 27,703 kB
Portage overlays:
 [1] /usr/local/portage

to
Code:
These are the packages that I would merge, in order:

Calculating world dependencies ...done!
[ebuild   R   ] sys-devel/gcc-3.4.4-r1  (-altivec) -bootstrap -boundschecking -build -fortran* -gcj -gtk -hardened -ip28 (-multilib) -multislot (-n32) (-n64) +nls -nocxx -nopie -nossp -objc -vanilla 27,037 kB

Total size of downloads: 27,037 kB

For it looks like emerge will now rebuild the x86 gcc and not the x86_64 one!

Using distcc to my AMD64 system failed in compiling gcc: no x86_64 cpu support on the target system... That's right, we are talking about a dual PIII Katmai box. :?:

The local run will take a while, will come back when I have a result ...

While I'm waiting for the emerge task to finish, I noticed another perhaps problem with crossdev:
gcc-config -l output for the AMD64 system:
Code:
 [1] i686-pc-linux-gnu-3.4.5 *
 [2] i686-pc-linux-gnu-3.4.5-hardened
 [3] i686-pc-linux-gnu-3.4.5-hardenednopie
 [4] i686-pc-linux-gnu-3.4.5-hardenednopiessp
 [5] i686-pc-linux-gnu-3.4.5-hardenednossp
 [6] x86_64-pc-linux-gnu-3.4.4 *
 [7] x86_64-pc-linux-gnu-3.4.4-hardened
 [8] x86_64-pc-linux-gnu-3.4.4-hardenednopie
 [9] x86_64-pc-linux-gnu-3.4.4-hardenednopiessp
 [10] x86_64-pc-linux-gnu-3.4.4-hardenednossp

and for the x86 system:
Code:
 [1] i686-pc-linux-gnu-3.4.4 *
 [2] i686-pc-linux-gnu-3.4.4-hardened
 [3] i686-pc-linux-gnu-3.4.4-hardenednopie
 [4] i686-pc-linux-gnu-3.4.4-hardenednopiessp
 [5] i686-pc-linux-gnu-3.4.4-hardenednossp
 [6] x86_64-pc-linux-gnu-3.4.5 *
 [7] x86_64-pc-linux-gnu-3.4.5-hardened
 [8] x86_64-pc-linux-gnu-3.4.5-hardenednopie
 [9] x86_64-pc-linux-gnu-3.4.5-hardenednopiessp
 [10] x86_64-pc-linux-gnu-3.4.5-hardenednossp


Why are the versions of gcc switched? - Actually I'm rebuilding i686 gcc-3-4-4 on/for the x86 system, may be this is a waste of time ... The x86_64 gcc-3.4.5 on the x86 system is causing the trouble. - confused!

bye
Markus
Back to top
View user's profile Send private message
limn
l33t
l33t


Joined: 13 May 2005
Posts: 997

PostPosted: Tue Jan 24, 2006 5:21 pm    Post subject: Reply with quote

I misunderstood what you were saying.

From a distcc perspective, you don't need a fortran cross compiler.
distcc is only going to send C and C++ (or the Objective variants) to be cross-compiled.
You could, and you probably want to, put
Code:
cross-x86_64-pc-linux-gnu/gcc -fortran

in /etc/portage/package.use and not change /etc/make.conf.

I do not have an AMD64 box, however it looks to me that you would want to emerge the x86_64 gcc cross compliers version 3.4.4 to match what is running on the AMD64 box. Then try distcc again.

I still don't see a connection between the fortran flag and the
emerge wrote:
'//lib64/libc.so.6' was detected w/out ssp, that sucks (a lot)
message.
There may be other problems.
Back to top
View user's profile Send private message
MSc
n00b
n00b


Joined: 31 Dec 2005
Posts: 16

PostPosted: Tue Jan 24, 2006 5:36 pm    Post subject: Reply with quote

Hi limn,
job one - rebuilding gcc for the x86 environment without fortran - is done, and now I have to emerge gcc again to reenable fortran (the use flag).

After this I'll try you suggestion regarding /etc/portage/package.use.

And finally same for me, I can't see the direct link between the ssp error and the flags. To be honest, I have no clue about the backgraound of ssp, searching in the forum didn't help me.

Let's compile a few lines of code and wait for the result ...

... looks like crossdev / distcc is now broken on my system(s)
Code:
config.status: executing default commands
make[1]: Entering directory `/var/tmp/portage/gcc-3.4.4-r1/work/build/libiberty'
if [ x"-fpic" != x ] && [ ! -d pic ]; then \
  mkdir pic; \
else true; fi
touch stamp-picdir
if [ x"-fpic" != x ]; then \
  gcc -c -DHAVE_CONFIG_H -march=pentium3 -pipe -O2 -I. -I/var/tmp/portage/gcc-3.4.4-r1/work/gcc-3.4.4/libiberty/../include  -W -Wall -Wtraditional -pedantic -fpic /var/tmp/portage/gcc-3.4.4-r1/work/gcc-3.4.4/libiberty/regex.c -o pic/regex.o; \
else true; fi
/var/tmp/portage/gcc-3.4.4-r1/work/gcc-3.4.4/libiberty/regex.c:1: error: CPU you selected does not support x86-64 instruction set
/var/tmp/portage/gcc-3.4.4-r1/work/gcc-3.4.4/libiberty/regex.c:1: error: CPU you selected does not support x86-64 instruction set
distcc[11488] ERROR: compile /var/tmp/portage/gcc-3.4.4-r1/work/gcc-3.4.4/libiberty/regex.c on 192.168.139.4 failed
make[1]: *** [regex.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/gcc-3.4.4-r1/work/build/libiberty'
make: *** [all-libiberty] Error 2

!!! ERROR: sys-devel/gcc-3.4.4-r1 failed.
!!! Function gcc_do_make, Line 1339, Exitcode 2
!!! emake failed with profiledbootstrap
!!! If you need support, post the topmost build error, NOT this status message.


Will try withou distcc ...

... x86 gcc is now recompiled, x86_64 gcc will no longer block an emerge -uND after . But something is still wrong with my systems:
  • after aplying the gcc-3.4.5-ssp.patch to the gcc-3.4.5 sources the system can't compile the x86_64 environment
  • actually distcc can't be used anymore to compile components on my AMD64 system for the slow x86 (that's not the compiler causing the problems!)
  • and I still have no idea what's behind the ssp

Will try to find some background information regarding spp and will try to extend my knowledge about distcc and crossdev (was working fine for about 2-3 weeks).
bye

Markus
Back to top
View user's profile Send private message
MSc
n00b
n00b


Joined: 31 Dec 2005
Posts: 16

PostPosted: Tue Mar 28, 2006 11:11 am    Post subject: Reply with quote

Hi All,
unfortunately the problem is now back again. This time playing with the +/- fortran use flag can prevent the system from trying, and failing to build the cross gcc environment.
Code:
...
 * Done with patching
 * Applying stub patch for htb ...                                                                                            [ ok ]
 * Applying gcc-3.4.5-ssp.patch ...                                                                                           [ ok ]

!!! ERROR: cross-x86_64-pc-linux-gnu/gcc-3.4.5-r1 failed.
!!! Function libc_has_ssp, Line 499, Exitcode 0
!!! '//lib64/libc.so.6' was detected w/out ssp, that sucks (a lot)
!!! If you need support, post the topmost build error, NOT this status message.


I'm not an expert here, but will rebuilding other parts of the cross dev environment fix it? Can I rebuild the "lib64/libc.so.6" on my x86 system to support "ssp" for AMD64? And, sorry for the stupid question, how to force the system to do so???

Thanks for any help!

Bye
Markus
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on AMD64 All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum