Fwd: Segfaulting with Ubuntu

Jay Sullivan <[email protected]>
Newsgroups gmane.linux.lib.dietlibc
Message-ID <[email protected]>
I'm running in a few x86 virtual Linux machines.  I'm trying to build
dietlibc-0.32 on them.

I was able to compile dietlibc-0.32 with gcc-4.4.0 (in TinyCore Linux 2.8) :

	$ gcc -v
	Using built-in specs.
	Target: i686-pc-linux-gnu
	Configured with: ../gcc-4.4.0/configure --prefix=/usr/local
--libexecdir=/usr/local/lib --enable-shared --enable-threads=posix
--enable-__cxa_atexit --enable-c99 --enable-long-long
--enable-clocale=gnu --enable-languages=c,c++ --disable-multilib
--disable-libstdcxx-pch
	Thread model: posix
	gcc version 4.4.0 (GCC for Cross-LFS 4.4.0.20090703)


Now I'd like to try compiling it on Ubuntu-9.04, which comes with the
following version of gcc:

	$ gcc -v
	Using built-in specs.
	Target: i486-linux-gnu
	Configured with: ../src/configure -v --with-pkgversion='Ubuntu
4.3.3-5ubuntu4'
--with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr
--enable-shared --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix --enable-nls
--with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3
--enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc
--enable-mpfr --enable-targets=all --with-tune=generic
--enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu
--target=i486-linux-gnu
	Thread model: posix
	gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4)

However, dietlibc refuses to compile with this compiler.  A few
minutes into the make process, I get a segfault :

	$ make
	...
	...
	bin-i386/diet gcc -D__dietlibc__ -pipe -nostdinc -Os
-fomit-frame-pointer -falign-functions=1 -falign-jumps=1
-falign-loops=1 -mpreferred-stack-boundary=2 -W -Wall -Wextra
-Wchar-subscripts -Wmissing-prototypes -Wmissing-declarations
-Wno-switch -Wno-unused -Wredundant-decls -o bin-i386/elftrunc
contrib/elftrunc.c
	make: *** [bin-i386/elftrunc] Segmentation fault

The same thing happens in Ubuntu 9.10, after trying several different
pre-packaged versions of gcc. This seems to happen regardless of gcc
version.  It also seems to happen regardless of dietlibc version.

I was, on the other hand, able to compile dietlibc using a
cross-compiler made from uClinux :

	$ gcc -v
	Target: i686-unknown-linux
	Configured with:
/home/firmware-1e52d09f49d6/build/temp-i686/gcc-core/configure
--prefix=/home/firmware-1e52d09f49d6/build/cross-compiler-i686
--host=i686-walrus-linux --target=i686-unknown-linux
--enable-languages=c,c++ --enable-long-long --enable-c99
--disable-shared --disable-threads --disable-nls --disable-multilib
--enable-__cxa_atexit --disable-libstdcxx-pch --enable-sjlj-exceptions
--program-prefix=i686-
	Thread model: single
	gcc version 4.1.2


Ubuntu seems to be doing something to their gcc that is making the
dietlibc build break.   Does anyone know why this is happening?
Should I just stop trying to use pre-packaged versions of gcc?  I
would like to understand this problem so that I can move on without
wondering if I'm dong something wrong.

Thanks, if anyone's listening!
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.