This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Bizarre build problem that goes away when you "make" again.
- From: "Kaz Kylheku" <kaz at zeugmasystems dot com>
- To: <libc-alpha at sources dot redhat dot com>
- Date: Wed, 4 Oct 2006 11:51:44 -0700
- Subject: Bizarre build problem that goes away when you "make" again.
I've encountered this when building glibc for "mips-linux", and then it
happened again when building for "i686-linux".
I dealt with the first occurence by simply blowing away the build
directory and starting again. It worked.
When it happened the second time, targetting "i686-linux", I simply
re-ran make in the configured build directory. It worked without a
hitch, as did make install.
The problem was that when "dl-allobjs.os" is being linked in the elf
subdirectory, for some strange reason, the target architecture string
was inserted as the very first argument of the cross-gcc.
For instance:
i686-linux-gcc i686-linux -nostdlib -nostartfiles -r -o
/[snip]/dl-allobjs.os ... etc
Or:
mips-linux-gcc mips-linux -nostdlib -nostartfiles -r -o
/[snip]/dl-allobjs.os ... etc
The compiler choked since, of course, there is no such file as
"i686-linux". The correct command differs in that it doesn't have that
bogus argument.
Any hypotheses on how that could arise and why it would just clear up by
itself?
I don't like things that clear up by themselves. What's particularly
strange is that it went away in a clean rebuild: I did "rm -rf" on the
build directory, created it again, reconfigured using exactly the same
configure line, and built again. This time, no problem. So it's not the
result of any state that is recorded in the build directory.
Haunted computer? :)