Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 409135 - sys-libs/glibc-2.13.4 - ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crt1.o' is incompatible with i386 output
Summary: sys-libs/glibc-2.13.4 - ld: i386:x86-64 architecture of input file `/usr/lib/...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-03-21 09:55 UTC by Alessandro Surace
Modified: 2012-07-27 15:54 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge_info.txt,7.01 KB, text/plain)
2012-03-21 09:55 UTC, Alessandro Surace
Details
build.log (build.log,17.17 KB, text/plain)
2012-03-21 09:56 UTC, Alessandro Surace
Details
environment (environment,127.94 KB, text/plain)
2012-03-21 09:56 UTC, Alessandro Surace
Details
config.log (config.log,54.42 KB, text/plain)
2012-03-23 07:22 UTC, Alessandro Surace
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alessandro Surace 2012-03-21 09:55:35 UTC
Created attachment 306133 [details]
emerge --info

Reinstall of glibc-2.13-r4 fails due to:
cchecking for forced unwind support... no
configure: error: forced unwind support is required


I've installed libunwind; till the last development version but nothing change.
Comment 1 Alessandro Surace 2012-03-21 09:56:14 UTC
Created attachment 306135 [details]
build.log
Comment 2 Alessandro Surace 2012-03-21 09:56:49 UTC
Created attachment 306137 [details]
environment
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2012-03-21 15:50:05 UTC
Please attach config.log as well.
Comment 4 Alessandro Surace 2012-03-23 07:22:43 UTC
Created attachment 306383 [details]
config.log

As requested
Comment 5 SpanKY gentoo-dev 2012-03-23 16:05:11 UTC
clear your ccache and try again
Comment 6 Alessandro Surace 2012-03-26 10:44:37 UTC
FEATURES="-ccache -distcc" emerge -v sys-libs/glibc
Same result
Comment 7 SpanKY gentoo-dev 2012-04-12 20:57:49 UTC
did you convert from a non-multilib system ?

what does `ls / /usr` show ?

does this work:
echo 'main(){}' | gcc -x c - -m32 -o a.out
Comment 8 Alessandro Surace 2012-06-06 10:21:48 UTC
Hi What do you mean about the non-multilib conversion?
It is 64 bit system with a x86 crossdev compiler.

Here what you ask me:

/:
APPOGGIO      dead.letter  lib         media        proc  state  var
$AVG8.VAULT$  dev          lib32       mnt          root  sys    
bin           etc          lib64       opt          run   tmp
boot          home         lost+found  sbin  usr

/usr:
bin                  i686-pc-linux-gnu  lib64    sbin     X11R6
etc                  include            libexec  share    x86_64-pc-linux-gnu
games                kde                local    src      Xerox
gnu-classpath-0.98   lib                portage  tmp
i686-linux-crossdev  lib32              qt       twisted

alex@mplinu /usr/local/sbin $ cd
alex@mplinu ~ $ echo 'main(){}' | gcc -x c - -m32 -o a.out
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../libc.so when searching for -lc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../libc.a when searching for -lc
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crt1.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crti.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crtn.o' is incompatible with i386 output
collect2: ld returned 1 exit status
Comment 9 SpanKY gentoo-dev 2012-06-08 04:09:33 UTC
your glibc or gcc is broken.  i don't know how it got broken, but it is.  you should grab a binpkg (either from another machine or from tinderbox) to recover.

a correct setup with current amd64 multilib setups:
 - /lib and /usr/lib are symlinks to lib64
 - /lib32 and /usr/lib32 contain 32bit libs/objs
 - /lib64 and /usr/lib64 contain 64bit libs/objs
 - `file /usr/lib32/crti.o` should show 32bit
 - `file /usr/lib64/crti.o` should show 64bit
 - `gcc -print-multi-os-directory` should show ../lib64
 - `gcc -print-multi-os-directory` should show ../lib32
 - `echo 'main(){}' | gcc -x c - -m32 -o a.out -v` should produce a 32bit a.out and should mention /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib32/crti.o
 - `echo 'main(){}' | gcc -x c - -o a.out` should produce a 64bit a.out and should mention /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64/crti.o
Comment 10 Alessandro Surace 2012-06-11 15:11:30 UTC
Ok follow all your request.
The only problem seems so be the fact that I can't produce a 32bit a.out.

However I try to substitute gcc from tinderbox. But How Can I broke gcc or glibc ? I can't build new package without problem!


mplinu / # ls -ald lib /usr/lib
lrwxrwxrwx 1 root root 5 Feb  9 19:41 lib -> lib64
lrwxrwxrwx 1 root root 5 Sep 26  2009 /usr/lib -> lib64
mplinu / # ls -ald lib32 /usr/lib32/
drwxr-xr-x  3 root root  4096 Jun  6 09:28 lib32
drwxr-xr-x 42 root root 49152 Mar 21 17:11 /usr/lib32/
mplinu / # file /usr/lib32/crti.o 
/usr/lib32/crti.o: ELF 32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not stripped
mplinu / # file /usr/lib64/crti.o 
/usr/lib64/crti.o: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not stripped
mplinu / # gcc -print-multi-os-directory
../lib64
mplinu / # gcc -print-multi-os-directory
../lib64
mplinu / # echo 'main(){}' | gcc -x c - -m32 -o a.out -v` should
> ^C
mplinu / # echo 'main(){}' | gcc -x c - -m32 -o a.out -v
Using built-in specs.
COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /opt/tmp/portage/sys-devel/gcc-4.5.3-r2/work/gcc-4.5.3/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4 --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec --disable-fixed-point --without-ppl --without-cloog --disable-lto --enable-nls --without-included-gettext --with-system-zlib --disable-werror --enable-secureplt --enable-multilib --enable-libmudflap --disable-libssp --enable-libgomp --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/python --enable-checking=release --enable-java-awt=gtk --enable-languages=c,c++,java,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-targets=all --with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.5.3-r2 p1.1, pie-0.4.7'
Thread model: posix
gcc version 4.5.3 (Gentoo 4.5.3-r2 p1.1, pie-0.4.7) 
COLLECT_GCC_OPTIONS='-m32' '-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 -quiet -v -imultilib 32 - -D_FORTIFY_SOURCE=2 -quiet -dumpbase - -m32 -mtune=generic -march=x86-64 -auxbase - -version -o /tmp/ccZoAWYm.s
GNU C (Gentoo 4.5.3-r2 p1.1, pie-0.4.7) version 4.5.3 (x86_64-pc-linux-gnu)
	compiled by GNU C version 4.5.3, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed
 /usr/include
End of search list.
GNU C (Gentoo 4.5.3-r2 p1.1, pie-0.4.7) version 4.5.3 (x86_64-pc-linux-gnu)
	compiled by GNU C version 4.5.3, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: aba8b24ebc6de834e50466f38e57174e
COLLECT_GCC_OPTIONS='-m32' '-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 as -V -Qy --32 -o /tmp/ccIIhK6Z.o /tmp/ccZoAWYm.s
GNU assembler version 2.21.1 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.21.1
COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32/:/lib/../lib32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-m32' '-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o a.out /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32/crtbegin.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32 -L/lib/../lib32 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../.. /tmp/ccIIhK6Z.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32/crtend.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crtn.o
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../libc.so when searching for -lc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../libc.a when searching for -lc
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crt1.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crti.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crtn.o' is incompatible with i386 output
collect2: ld returned 1 exit status
mplinu / # la -al a.o^C
mplinu / # echo 'main(){}' | gcc -x c -  -o a.out -v
Using built-in specs.
COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /opt/tmp/portage/sys-devel/gcc-4.5.3-r2/work/gcc-4.5.3/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4 --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec --disable-fixed-point --without-ppl --without-cloog --disable-lto --enable-nls --without-included-gettext --with-system-zlib --disable-werror --enable-secureplt --enable-multilib --enable-libmudflap --disable-libssp --enable-libgomp --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/python --enable-checking=release --enable-java-awt=gtk --enable-languages=c,c++,java,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --enable-targets=all --with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.5.3-r2 p1.1, pie-0.4.7'
Thread model: posix
gcc version 4.5.3 (Gentoo 4.5.3-r2 p1.1, pie-0.4.7) 
COLLECT_GCC_OPTIONS='-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 -quiet -v - -D_FORTIFY_SOURCE=2 -quiet -dumpbase - -mtune=generic -march=x86-64 -auxbase - -version -o /tmp/cccSjv4N.s
GNU C (Gentoo 4.5.3-r2 p1.1, pie-0.4.7) version 4.5.3 (x86_64-pc-linux-gnu)
	compiled by GNU C version 4.5.3, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed
 /usr/include
End of search list.
GNU C (Gentoo 4.5.3-r2 p1.1, pie-0.4.7) version 4.5.3 (x86_64-pc-linux-gnu)
	compiled by GNU C version 4.5.3, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: aba8b24ebc6de834e50466f38e57174e
COLLECT_GCC_OPTIONS='-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 as -V -Qy --64 -o /tmp/ccNiexk9.o /tmp/cccSjv4N.s
GNU assembler version 2.21.1 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.21.1
COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64/:/lib/../lib64/:/usr/lib/../lib64/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/collect2 --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o a.out /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64/crt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/crtbegin.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../.. /tmp/ccNiexk9.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/crtend.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64/crtn.o
mplinu / # ls -al .
./             ../            .distcc/       .pulse-cookie  
mplinu / # ls -al a.out 
-rwxr-xr-x 1 root root 7823 Jun 11 16:53 a.out
mplinu / # file a.out 
a.out: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
Comment 11 Alessandro Surace 2012-06-11 15:43:38 UTC
I've put gcc-4.5-3-r1 from tinderbox but the result is the same:
Using built-in specs.
COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /var/tmp/portage/sys-devel/gcc-4.5.3-r1/work/gcc-4.5.3/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4 --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec --disable-fixed-point --without-ppl --without-cloog --disable-lto --enable-nls --without-included-gettext --with-system-zlib --disable-werror --enable-secureplt --enable-multilib --enable-libmudflap --disable-libssp --enable-libgomp --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/python --enable-checking=release --enable-languages=c,c++,java,objc,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.5.3-r1 p1.0, pie-0.4.5'
Thread model: posix
gcc version 4.5.3 (Gentoo 4.5.3-r1 p1.0, pie-0.4.5) 
COLLECT_GCC_OPTIONS='-m32' '-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 -quiet -v -imultilib 32 - -D_FORTIFY_SOURCE=2 -quiet -dumpbase - -m32 -mtune=generic -march=x86-64 -auxbase - -version -o /tmp/cczyTSlD.s
GNU C (Gentoo 4.5.3-r1 p1.0, pie-0.4.5) version 4.5.3 (x86_64-pc-linux-gnu)
	compiled by GNU C version 4.5.3, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include
 /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include-fixed
 /usr/include
End of search list.
GNU C (Gentoo 4.5.3-r1 p1.0, pie-0.4.5) version 4.5.3 (x86_64-pc-linux-gnu)
	compiled by GNU C version 4.5.3, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 07cc811215cb6bf5b74bc4c754eb4726
COLLECT_GCC_OPTIONS='-m32' '-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 as -V -Qy --32 -o /tmp/cciyqO4N.o /tmp/cczyTSlD.s
GNU assembler version 2.21.1 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.21.1
COMPILER_PATH=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/libexec/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32/:/lib/../lib32/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/:/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-m32' '-o' 'a.out' '-v' '-mtune=generic' '-march=x86-64'
 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o a.out /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32/crtbegin.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32 -L/lib/../lib32 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../.. /tmp/cciyqO4N.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/32/crtend.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crtn.o
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../libc.so when searching for -lc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../libc.a when searching for -lc
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crt1.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crti.o' is incompatible with i386 output
/usr/bin/ld: i386:x86-64 architecture of input file `/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../crtn.o' is incompatible with i386 output
collect2: ld returned 1 exit status
Comment 12 Alessandro Surace 2012-06-11 16:54:48 UTC
I've substitued glibc too; with the same version glibc-2.13-r4 .

However I faced the same problem while building glibc !
Comment 13 Alessandro Surace 2012-06-14 12:37:25 UTC
I dear,
I've found the DOGMA!

Some weeks agou I moved the /usr/lib64 in another FS:
mv /usr/lib64 /mnt/fsmisc/

And then I linked is under /usr
cd /usr
ln -s /mnt/fsmisc/lib64 

At that point I correct all links that point from /usr/lib64 to /lib64 ....

Everything work properly...not everything.


Howevere the problem was that when I build new package the link between /usr/lib and /lib were created with relative path without check.

For example 
ls -al /usr/lib/libcrypt.so point to ../../lib64/libcrypt.so.1 
but if the real fs FS is /mnt/fsmisc the lib is not reachable.

So I think about the fact that no check are done in link creation in build process. Is it correct?
Comment 14 SpanKY gentoo-dev 2012-07-24 17:50:56 UTC
using symlinks for /usr or any dir under /usr (especially lib*) has never been supported, and is known to not work because many tools (like gcc) use relative paths across those points which completely break when using symlinks.  there isn't really any ebuild we can add these checks because any package that calls `gcc` can fail.
Comment 15 Alessandro Surace 2012-07-27 07:10:46 UTC
That is not completely true because I have build a lot of packages without problem.

However If you think that a link check is not useful thats will be.
Comment 16 SpanKY gentoo-dev 2012-07-27 15:54:06 UTC
as you found here, building any package with the non-native multilib will fail.  there are other examples we've found over the years unrelated to gcc or multilib where using symlinks will also fail.  that you merged some packages w/out a problem isn't terribly relevant -- you got lucky.

since symlinks completely break relative paths, they are not allowed.  there is no single ebuild we can sanely check for this setup.