Never, ever use # ld -shared -o libfoo.so t2.o to create the shared library unless you know what you are doing. Always use # gcc -shared -o libfoo.so t2.o One of those days I will update my ELF paper: http://ftp.valinux.com/pub/support/hjl/doc/elf.ps.gz -- H.J. Lu (hjl@gnu.org)