[uClibc] binary / libc.so.0 segfaults
Doug Vetter
doug at packetstorm.com
Wed Apr 6 17:44:46 UTC 2005
Hi all,
I've been successfully working with uclibc on i386 linux (v 0.18) for a
couple years. I recently reinstalled my uclibc development environment
from scratch using notes I maintained during the original install as
well as the usual online / source documentation. The versions of
uclibc, target kernel, and all other applications are maintained under
cvs and were used for the reinstall.
The problem is that binaries built in the original environment execute
in the target environment normally, while newer ones segfault. In fact,
when I execute /lib/libc.so.0 in the target environment, that segfaults too.
For example, here's the dirt-simple "stat" program. "stat" is the
original binary. "stat.new" is the recently built binary. They are
both compiled as dynamic executables in this example obviously, but
building the new version as a static executable doesn't seem to matter
-- it still segfaults.
Executed on the development host:
-rwxr-xr-x 1 root root 38634 Oct 2 2003 stat*
-rwxr-xr-x 1 root root 40005 Apr 6 12:24 stat.new*
# i386-uclibc-ldd stat
libc.so.0 => /usr/i386-linux-uclibc/lib/libc.so.0 (0x00000000)
/lib/ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x00000000)
# i386-uclibc-ldd stat.new
libc.so.0 => /usr/i386-linux-uclibc/lib/libc.so.0 (0x00000000)
/lib/ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x00000000)
My target environment has limited debugging resources due to space
constraints (the original reason for going with uclibc), and since I
can't seem to compile anything properly, I can't install any new
debugging utilities on the target.
Any thoughts?
-Doug
More information about the uClibc
mailing list