------- Additional Comments From michael at weiser dot dinsnail dot net 2005-11-10 18:57 ------- The testcase nwo runs fine with the patched ld:
[EMAIL PROTECTED] ot]$ make bu as -64 -o start.o start.s as -64 -o ot.o ot.s as -64 -o os.o os.s /usr/local/bin/ld -melf64bmip -o ot-opt-bu /usr/lib64/mips4/crt1.o ot.o os.o /usr/lib64/mips4/crtn.o -lc /usr/local/bin/ld -melf64bmip -o ot-noopt-bu /usr/lib64/mips4/crt1.o ot.o /usr/lib64/mips4/crtn.o -lc sed -e "s,/\* \(.weak.*\) \*/,\1," ot.s >otw.s as -64 -o otw.o otw.s /usr/local/bin/ld -melf64bmip -o otw-opt-bu /usr/lib64/mips4/crt1.o otw.o os.o /usr/lib64/mips4/crtn.o -lc /usr/local/bin/ld -melf64bmip -o otw-noopt-bu /usr/lib64/mips4/crt1.o otw.o /usr/lib64/mips4/crtn.o -lc [ -x ot-opt-bu ] && ./ot-opt-bu *** Error code 73 (bu21) (ignored) [ -x ot-noopt-bu ] && ./ot-noopt-bu *** Error code 255 (bu21) (ignored) [ -x otw-opt-bu ] && ./otw-opt-bu *** Error code 73 (bu21) (ignored) [ -x otw-noopt-bu ] && ./otw-noopt-bu *** Error code 255 (bu21) (ignored) Even the not-present-detection seems to work somehow (!?). Ahh, that may be because the optional symbols are actually resolved to __missing_function_ by *rld* not ld. But the original problem with libpthread remains: [EMAIL PROTECTED] ~]$ cat t.c int main(void) { } [EMAIL PROTECTED] ~]$ gcc -o t.o -c t.c [EMAIL PROTECTED] ~]$ gcc -o t t.o -lpthread /usr/lib/../lib64/libpthread.so: undefined reference to `_mpi_sgi_init' collect2: ld returned 1 exit status The actual ld call is as follows: /usr/local/bin/ld -v -call_shared -init __gcc_init -fini __gcc_fini -melf64bmip -o t /usr/lib64/mips3/crt1.o /usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1/64/irix-crti.o /usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1/64/crtbegin.o -L/usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1/64 -L/usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1 -L/usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1/../../../../lib64 -L/usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1/../../.. -L/lib/../lib64 -L/usr/lib/../lib64 t.o -lpthread -lgcc -L/usr/lib64/mips3 -L/usr/lib64 -lc -lgcc /usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1/64/crtend.o /usr/local/gcc-4.0.1/lib/gcc/mips-sgi-irix6.5/4.0.1/64/irix-crtn.o /usr/lib64/mips3/crtn.o Is there a difference in treatment of object and *shared* object symbols? -- http://sourceware.org/bugzilla/show_bug.cgi?id=1150 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils