Issues with ld: "bootstrap with --static" rearing its ugly head

Greg Schafer gschafer at zip.com.au
Tue Nov 25 16:52:27 PST 2003


On Tue, Nov 25, 2003 at 02:44:09PM +0100, Erik Postma wrote:
> I've finally had time to redo this stuff. The logs and files are up at
> http://www.win.tue.nl/~epostma/lfs.
> 
> Files:
>  lfs-commands.txt is a list of all the commands I ran in order to
>      obtain these files. Starts with mkdir $LFS/tools.
>  binu-build.greg.tar.bz2 is the tar ball of binutils pass 2 in chapter
>      5 in the state you described: after make configure-host.
>  c5-binu-p2-configure.greg is the log of the configure run in binutils
>      pass 2 of chapter 5.
>  c5-binu-p2-mch.greg is the log of make configure-host in binutils
>      pass 2 of chapter 5.
>  c5-binu-p2-config.log.greg is the config.log file from binutils pass
>      2 of chapter 5.
> 
>  c5-gcc-testsum.greg    
>  c5-glibc-mc-log-2.greg.bz2
>  c5-glibc-mc-log.greg.bz2
>      are probably of less interest; they are respectively the test_summary
>      of gcc, and the log of two runs of make check of glibc. Two runs,
>      because the first chokes on check-textrel as described in my very
>      first post, and then the second run after applying a patch to
>      disable this test.
> 
> I hope you or someone else can find something useful here.

Erik, thanks for all that. I now understand why you and a couple of other
folks have had the binutils-pass2 ld static test fail. It was always
obviously related to NLS hence the suggested workaround to pass
"--disable-nls" to work around the problem. But I never understood the exact
cause. Now it's easy :-)

The real problem is that the configure scripts for binutils do not find the
necessary gettext stuff on the host:

-checking for msgfmt... /usr/bin/msgfmt
-checking for dcgettext... yes
-checking for gmsgfmt... /usr/bin/msgfmt
-checking for xgettext... /usr/bin/xgettext
+checking for msgfmt... no
+checking for msgfmt... (cached) no
+checking for gmsgfmt... no
+checking for xgettext... :
 updating cache .././config.cache
 creating ./config.status
 creating Makefile
 creating config.h
+linking ../../binutils-2.14/intl/libgettext.h to libintl.h

i.e. msgfmt, xgettext and friends.

This results in the Makefiles ending up with:

-USE_INCLUDED_LIBINTL = no
+USE_INCLUDED_LIBINTL = yes

So, not having gettext installed on the host is the real reason for the
failing test.

NOTE, this still doesn't explain the problem of the missing shared lib once
inside the chroot. I can't see any correlation between the two. It also
doesn't explain the failed test in the glibc test suite you saw. I have no
clue about that one.

In summary, it reinforces the fact that the host always has some influence on
Chapter 5 therefore backing up my belief that running test suites in Chapter
5 is pretty much a lottery. Chapter 6 is where it counts.



More information about the lfs-support mailing list