On Tue, Oct 13, 2009 at 2:01 PM, Christian Weisgerber <[email protected]> wrote: > I'm currently stuck on two (unrelated) linker errors that I don't > fully understand and where I have no idea at all how to proceed. > > This happens at least on amd64 and sparc64, but not on i386: > -------> > cc -std=gnu99 -O2 -pipe -Wall -W -o .libs/tiffmedian tiffmedian.o -L/usr/local/lib -L../libtiff/.libs -ltiff ../port/.libs/libport.a -ljpeg -lz -lm -Wl,-rpath,/usr/local/lib > /usr/bin/ld: ../libtiff/.libs/libtiff.so.38.2: invalid string offset 3503345872 >= 4739 for section `.dynstr' > /usr/bin/ld: ../libtiff/.libs/libtiff.so.38.2: invalid string offset 3503345872 >= 4739 for section `.dynstr' > /usr/bin/ld: ../libtiff/.libs/libtiff.so.38.2: invalid string offset 3503345872 >= 4739 for section `.dynstr' > <-------
Offset beyond end of section? Looks like libtiff.so.38.2 is corrupt to me. I would remove all its objects and rebuild it and see if the problem persists, or maybe save them for comparison post-facto if you want to try to figure out how one or more became corrupt. > This popped up on i386: > -------> > cc -O2 -pipe -g -o .libs/epeg epeg_main.o -L/usr/local/lib -L../../src/lib/.libs -lepeg -ljpeg -Wl,-rpath,/usr/local/lib > ../../src/lib/.libs/libepeg.so.0.0: undefined reference to `no symbol' > <------- > > Any pointers? Weird: if I'm reading the ld source correctly, the code to look up a symbol by name was passed a NULL pointer. Again, a corrupt library seems likely. Do you have a bad disk or a flaky NFS server in your setup? Philip Guenther

