Skip to contentSkip to conversation

New: binutils fails to build for i386

Buildroot bugzilla at busybox.net 1 participant 6 messages May 19, 2010 – May 30, 2010

lore
Share & tools
lore
#0 lore raw

https://bugs.busybox.net/show_bug.cgi?id=1789

Summary: binutils fails to build for i386
Product: buildroot
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: minor
Priority: P5
Component: Other
AssignedTo: unassigned at buildroot.uclibc.org
ReportedBy: buildroot at invalid-domain.net
CC: buildroot at uclibc.org
Estimated Hours: 0.0

I'm trying to build buildroot for i386 using the default configuration (i.e. make ARCH=i386 defconfig ; make), but it stops when building binutils:

/usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include -c -DHAVE_CONFIG_H -g -O2 -I. -I/media/disk/git/test/toolchain/binutils-2.20.1/libiberty/../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c -o fibheap.o /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c: In function 'fibheap_union':
/media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:151:
warning: implicit declaration of function 'free' /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c: In function 'fibheap_replace_key_data':
/media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:220: error:
'LONG_MIN' undeclared (first use in this function) /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:220: error:
(Each undeclared identifier is reported only once /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:220: error:
for each function it appears in.) /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c: In function 'fibheap_delete_node':
/media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:261: error:
'LONG_MIN' undeclared (first use in this function) /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:265:
warning: implicit declaration of function 'abort' /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:265:
warning: incompatible implicit declaration of built-in function 'abort' /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c: In function 'fibheap_consolidate':
/media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:368:
warning: implicit declaration of function 'memset' /media/disk/git/test/toolchain/binutils-2.20.1/libiberty/fibheap.c:368:
warning: incompatible implicit declaration of built-in function 'memset' make[3]: *** [fibheap.o] Error 1
make[3]: Leaving directory `/media/disk/git/test/toolchain/binutils-2.20.1-build/libiberty' make[2]: *** [all-libiberty] Error 2
make[2]: *** Waiting for unfinished jobs....
checking if /usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include supports -fno-rtti -fno-exceptions... no
checking for /usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include option to produce PIC... -fPIC -DPIC
checking if /usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include PIC flag -fPIC -DPIC works... yes
checking if /usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include static flag -static works... yes
checking if /usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include supports -c -o file.o... yes
checking if /usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include supports -c -o file.o... (cached) yes
checking whether the /usr/bin/gcc -Wl,-rpath -Wl,/media/disk/git/test/host/usr/lib -I/media/disk/git/test/host/include -I/media/disk/git/test/host/usr/include linker (/usr/bin/ld -L/media/disk/git/test/host/lib -L/media/disk/git/test/host/usr/lib -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
Setting warning flags = -W -Wall -Wstrict-prototypes -Wmissing-prototypes checking whether to enable maintainer-specific portions of Makefiles... no checking whether to install libbfd... no
checking whether NLS is requested... no
checking whether NLS is requested... no
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking for stdlib.h... (cached) yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking whether basename is declared... yes
checking whether stpcpy is declared... yes
checking linker --as-needed support... yes
checking for cos in -lm... yes
configure: updating cache ./config.cache
configure: creating ./config.status
config.status: creating Makefile
config.status: creating po/Makefile.in
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
make[2]: Leaving directory `/media/disk/git/test/toolchain/binutils-2.20.1-build'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/media/disk/git/test/toolchain/binutils-2.20.1-build'
make: *** [/media/disk/git/test/toolchain/binutils-2.20.1-build/binutils/objdump] Error 2

$  uname -a
Linux terdaan 2.6.24-27-generic #1 SMP Wed Mar 24 11:03:26 UTC 2010 x86_64
GNU/Linux

This bug first appeared after commit 6b939d40f6a29a43277566adc9d4312d49cb3abf; starting from the previous comit d701a82321ad2f3e5bfa16639e93532294cad4ce buildroot compiles without errors.

Bye, Ludger

Signature · 3 lines
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
#1 lore raw

[Buildroot] [Bug 1789] binutils fails to build for i386

https://bugs.busybox.net/show_bug.cgi?id=1789

--- Comment #1 from Thomas Petazzoni <[email protected]> --- I tried exactly the same configuration :
make ARCH=i386 defconfig
make

and I cannot reproduce the build failure. fibheap.c just builds fine here:

if [ x"" != x ]; then \
/usr/bin/gcc -Wl,-rpath -Wl,/home/test/buildroot/output/host/usr/lib
-I/home/test/buildroot/output/host/include -I/home/test/buildroot/output/host/usr/include -c -DHAVE_CONFIG_H -g -O2 -I. -I/home/test/buildroot/output/toolchain/binutils-2.20.1/libiberty/../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic /home/test/buildroot/output/toolchain/binutils-2.20.1/libiberty/fibheap.c -o pic/fibheap.o; \
else true; fi
/usr/bin/gcc -Wl,-rpath -Wl,/home/test/buildroot/output/host/usr/lib -I/home/test/buildroot/output/host/include -I/home/test/buildroot/output/host/usr/include -c -DHAVE_CONFIG_H -g -O2 -I. -I/home/test/buildroot/output/toolchain/binutils-2.20.1/libiberty/../include -W -Wall -Wwrite-strings -Wc++-compat -Wstrict-prototypes -pedantic /home/test/buildroot/output/toolchain/binutils-2.20.1/libiberty/fibheap.c -o fibheap.o

Signature · 3 lines
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
#2 lore raw

[Buildroot] [Bug 1789] binutils fails to build for i386

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=1789

--- Comment #2 from Thomas Petazzoni <[email protected]> --- See my config:
http://free-electrons.com/~thomas/pub/bug1789/config1

And the full build log:
http://free-electrons.com/~thomas/pub/bug1789/build1.log

Signature · 3 lines
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
#3 lore raw

[Buildroot] [Bug 1789] binutils fails to build for i386

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=1789

--- Comment #3 from buildroot at invalid-domain.net ---

Quoted 2 lines

See my config:
http://free-electrons.com/~thomas/pub/bug1789/config1

Yes, it's the same config as I am using (only with different number of simultaneous jobs). I have uploaded the full log to
http://files.invalid-domain.net/buildroot-without-patch.log

I tried the patch you posted to the mailing list (changing

    HOST_CFLAGS+=-Wl,-rpath -Wl,$(HOST_DIR)/usr/lib 
to
    HOST_LDFLAGS+=-Wl,-rpath -Wl,$(HOST_DIR)/usr/lib

in packages/Makefile.in) and it fixed the compiling problems for binutils for me. Unfortunately, fakeroot reports an error ("fakeroot: preload library not found, aborting.") when creating the ext2 fs. Log can be found at
http://files.invalid-domain.net/buildroot-with-proposed-patch.log

Completely removing the line

    HOST_CFLAGS+=-Wl,-rpath -Wl,$(HOST_DIR)/usr/lib 

from packages/Makefile.in) leads to a successfull build (see log at
http://files.invalid-domain.net/buildroot-with-dirty-fix.log).

Signature · 3 lines
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
#4 lore raw

[Buildroot] [Bug 1789] binutils fails to build for i386

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=1789

--- Comment #4 from Thomas <[email protected]> ---
for me, removing the line

   HOST_CFLAGS+=-Wl,-rpath -Wl,$(HOST_DIR)/usr/lib

leads to a successful build too, otherwise I have the same problems as described in this bug report. Tested with buildroot 2010.05rc3.

My host system is Ubuntu 8.04/32-bit. Target AT91RM9200.

Signature · 3 lines
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
#5 lore raw

[Buildroot] [Bug 1789] binutils fails to build for i386

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=1789

Peter Korsgaard <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #5 from Peter Korsgaard <[email protected]> --- I've reverted the commit (6b939d40f6a) for now, thanks.

Signature · 3 lines
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.