[lfs-support] problem building libstdc++ from chapter 5.8. Libstdc++-4.8.2

Durovic, Milan Milan.Durovic at ali.com.au
Sun May 18 23:14:07 PDT 2014


Hi,

 

I've come across a strange problem in building libstdc++. Before I
proceed, let me just say that in my environment I have $LFS set to
/usr/share/mk7i-toolchain and tools are rooted at
/usr/share/mk7i-toolchain/tools instead of /tools. I had no problem with
that when building binutils, gcc pass 1 and glibc. So here's the
problem:

 

The problem happens when executing ../gcc-4.8.2/libstdc++-v3/configure
line. I get:

 

checking dynamic linker characteristics... configure: error: Link tests
are not allowed after GCC_NO_EXECUTABLES.

 

which can be then tracked in the config.log file to the following
problem:

 

configure:3891: i686-alx-linux-gnu-gcc -o conftest    conftest.c  >&5

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find crt1.o: No such file or
directory

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find crti.o: No such file or
directory

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find
/usr/share/mk7i-toolchain/tools/lib/libc.so.6 inside
/usr/share/mk7i-toolchain

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find
/usr/share/mk7i-toolchain/tools/lib/libc_nonshared.a inside
/usr/share/mk7i-toolchain

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find
/usr/share/mk7i-toolchain/tools/lib/ld-linux.so.2 inside
/usr/share/mk7i-toolchain

collect2: error: ld returned 1 exit status

 

Now, what's strange about it is that when I check the settings of
cross-compile tools, things appear as one would expect. For example, the


default ld program for gnu-gcc is:

 

mk7 at mk7i-durovicm:~>
/usr/share/mk7i-toolchain/tools/bin/i686-alx-linux-gnu-gcc
-print-prog-name=ld

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld

 

... and the built-in search path for this linker is:

 

mk7 at mk7i-durovicm:~>
/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld --verbose|grep SEARCH

SEARCH_DIR("/usr/share/mk7i-toolchain/tools/lib");

 

The confusing bit is that all the files that ld complains about ("No
such file or directory") are actually right there! For example:

 

mk7 at mk7i-durovicm:~> ls -l /usr/share/mk7i-toolchain/tools/lib/crt1.o

-rw-r--r-- 1 root root 2800 2014-05-19 13:50
/usr/share/mk7i-toolchain/tools/lib/crt1.o

 

So, I'm really stuck here. If it helps, I tried building a small test
program to trigger the same error, but with more verbose output than

configure script provides, in order to reveal internal processing.
Here's what I get:

 

-- start quote --

mk7 at mk7i-durovicm:~>
/usr/share/mk7i-toolchain/tools/bin/i686-alx-linux-gnu-gcc -v
-I/usr/share/mk7i-toolchain/tools/include test.c

Using built-in specs.

COLLECT_GCC=/usr/share/mk7i-toolchain/tools/bin/i686-alx-linux-gnu-gcc

COLLECT_LTO_WRAPPER=/usr/share/mk7i-toolchain/tools/libexec/gcc/i686-alx
-linux-gnu/4.8.2/lto-wrapper

Target: i686-alx-linux-gnu

Configured with: ../gcc-4.8.2/configure --target=i686-alx-linux-gnu
--prefix=/usr/share/mk7i-toolchain/tools
--with-sysroot=/usr/share/mk7i-toolchain --with-newlib --without-headers
--with-local-prefix=/usr/share/mk7i-toolchain/tools
--with-native-system-header-dir=/usr/share/mk7i-toolchain/tools/include
--disable-nls --disable-shared --disable-multilib
--disable-decimal-float --disable-threads --disable-libatomic
--disable-libgomp --disable-libitm --disable-libmudflap
--disable-libquadmath --disable-libsanitizer --disable-libssp
--disable-libstdc++-v3 --enable-languages=c,c++

Thread model: single

gcc version 4.8.2 (GCC)

COLLECT_GCC_OPTIONS='-v' '-I' '/usr/share/mk7i-toolchain/tools/include'
'-mtune=generic' '-march=pentiumpro'

/usr/share/mk7i-toolchain/tools/libexec/gcc/i686-alx-linux-gnu/4.8.2/cc1
-quiet -v -I /usr/share/mk7i-toolchain/tools/include test.c -quiet
-dumpbase test.c -mtune=generic -march=pentiumpro -auxbase test -version
-o /tmp/ccAoJ9y4.s

GNU C (GCC) version 4.8.2 (i686-alx-linux-gnu)

        compiled by GNU C version 4.1.2 20061115 (prerelease) (SUSE
Linux), GMP version 5.1.3, MPFR version 3.1.2, MPC version 1.0.2

GGC heuristics: --param ggc-min-expand=100 --param
ggc-min-heapsize=131072

ignoring nonexistent directory
"/usr/share/mk7i-toolchain/usr/share/mk7i-toolchain/tools/include"

ignoring nonexistent directory
"/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../
../../i686-alx-linux-gnu/include"

ignoring nonexistent directory
"/usr/share/mk7i-toolchain/usr/share/mk7i-toolchain/tools/include"

#include "..." search starts here:

#include <...> search starts here:

/usr/share/mk7i-toolchain/tools/include

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/include

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/include
-fixed

End of search list.

GNU C (GCC) version 4.8.2 (i686-alx-linux-gnu)

        compiled by GNU C version 4.1.2 20061115 (prerelease) (SUSE
Linux), GMP version 5.1.3, MPFR version 3.1.2, MPC version 1.0.2

GGC heuristics: --param ggc-min-expand=100 --param
ggc-min-heapsize=131072

Compiler executable checksum: d4ab0d4090ea5fd2277f9bf8e110997e

COLLECT_GCC_OPTIONS='-v' '-I' '/usr/share/mk7i-toolchain/tools/include'
'-mtune=generic' '-march=pentiumpro'

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/as -v -I
/usr/share/mk7i-toolchain/tools/include --32 -o /tmp/ccesbM52.o
/tmp/ccAoJ9y4.s

GNU assembler version 2.24 (i686-alx-linux-gnu) using BFD version (GNU
Binutils) 2.24

COMPILER_PATH=/usr/share/mk7i-toolchain/tools/libexec/gcc/i686-alx-linux
-gnu/4.8.2/:/usr/share/mk7i-toolchain/tools/libexec/gcc/i686-alx-linux-g
nu/4.8.2/:/usr/share/mk7i-toolchain/tools/libexec/gcc/i686-alx-linux-gnu
/:/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/:/usr
/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/:/usr/share/mk7i-
toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../../../i686-alx-li
nux-gnu/bin/

LIBRARY_PATH=/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/
4.8.2/:/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/
../../../../i686-alx-linux-gnu/lib/

COLLECT_GCC_OPTIONS='-v' '-I' '/usr/share/mk7i-toolchain/tools/include'
'-mtune=generic' '-march=pentiumpro'

/usr/share/mk7i-toolchain/tools/libexec/gcc/i686-alx-linux-gnu/4.8.2/col
lect2 --sysroot=/usr/share/mk7i-toolchain --eh-frame-hdr -m elf_i386
-dynamic-linker /usr/share/mk7i-toolchain/tools/lib/ld-linux.so.2 crt1.o
crti.o
/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/crtbegi
n.o -L/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2
-L/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../..
/../../i686-alx-linux-gnu/lib /tmp/ccesbM52.o -lgcc -lc -lgcc
/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/crtend.
o crtn.o

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find crt1.o: No such file or
directory

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find crti.o: No such file or
directory

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find
/usr/share/mk7i-toolchain/tools/lib/libc.so.6 inside
/usr/share/mk7i-toolchain

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find
/usr/share/mk7i-toolchain/tools/lib/libc_nonshared.a inside
/usr/share/mk7i-toolchain

/usr/share/mk7i-toolchain/tools/lib/gcc/i686-alx-linux-gnu/4.8.2/../../.
./../i686-alx-linux-gnu/bin/ld: cannot find
/usr/share/mk7i-toolchain/tools/lib/ld-linux.so.2 inside
/usr/share/mk7i-toolchain

collect2: error: ld returned 1 exit status

-- end quote --

 

Any help or hint are really appreciated. I've checked file permissions,
paths, just no more clues...

 

Regards,

Milan



IMPORTANT CONFIDENTIALITY NOTICE:

This E-mail (including any documents referred to in, or attached, to this E-mail) may contain information that is personal, confidential or the subject of copyright, privilege or other proprietary rights in favor of Aristocrat, its affiliates or third parties. This E-mail is intended only for the named addressee. Any privacy, confidence, legal professional privilege, copyright or other proprietary rights in favor of Aristocrat, its affiliates or third parties, is not lost if this E-mail was sent to you by mistake.

If you received this E-mail by mistake you should: (i) not copy, disclose, distribute or otherwise use it, or its contents, without the consent of Aristocrat or the owner of the relevant rights; (ii) let us know of the mistake by reply E-mail or by telephone (AUS +61 2 9013 6000 or USA 1-877-274-9661); and (iii) delete it from your system and destroy all copies.

Any personal information contained in this E-mail must be handled in accordance with applicable privacy laws.

Electronic and internet communications can be interfered with or affected by viruses and other defects. As a result, such communications may not be successfully received or, if received, may cause interference with the integrity of receiving, processing or related systems (including hardware, software and data or information on, or using, that hardware or software). Aristocrat gives no assurances in relation to these matters.

If you have any doubts about the veracity or integrity of any electronic communication we appear to have sent you, please call (AUS +61 2 9013 6000 or USA 1-877-274-9661) for clarification.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxfromscratch.org/pipermail/lfs-support/attachments/20140519/bd4f5575/attachment.html>


More information about the lfs-support mailing list