Sorry for the reply to a 6-month-old message, but I didn't see any other replies to it, and I ran into this same problem today.
Original message follows unsnipped, as the context is probably not as readily available as you might wish. On Mon, Jan 02, 2006 at 10:30:35PM -0500, David Coulson wrote: > I've got a few boxes running Debian stable here, all updated. One box behaves > oddly, in that I get this: > > # getconf GNU_LIBPTHREAD_VERSION > linuxthreads-0.10 > > > When on everything else I get > > getconf GNU_LIBPTHREAD_VERSION > NPTL 0.60 > > > One the boxes which use NPTL, I can do this: > > # ldd /lib/libm.so.6 > /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) > libc.so.6 => /lib/tls/libc.so.6 (0xb7e4a000) > > > On the broken box, I get the following. > > # ldd /lib/libm.so.6 > /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) > libc.so.6 => /lib/libc.so.6 (0x40029000) > > > What exactly tells the linker to use /lib/tls first rather than /lib? > I've used strace, but still can't come up with anything useful. I > rsynced /lib from a working box onto the broken one and it still does > the same thing. > > One is running 2.6.14.2 (good), the other 2.6.14.5 (broken). I don't > think a minor revision change should make a difference. I threw 2.6.11 > onto the broken box also, and it does the same thing. > > Any suggestions? I feel like I'm going in circles to track this > problem. Several factors are at work, of course. Since your 'broken' machine has a 2.6 kernel, the kernel isn't the problem, and it seems safe to assume you're not using some wonderfully out-of-date libc6 package on there either, so we can be reasonably sure some ld-linux.so configuration item somewhere is causing the difficulty. Using LD_ASSUME_KERNEL in particular is a good way to force the dynamic linker not to use the lib/tls directories, and other LD_* options could have similar effects, and the /etc/ld.so.conf could affect ldconfig's idea of what should be used, so you should check those. But the one that got me is /etc/ld.so.nohwcap. If that file exists, the dynamic linker will not try to load libraries from the lib/tls dirs. In my case, that file was created when I downgraded libc6 from an etch (or maybe backports.org) version to the current sarge version. I believe it was created erroneously, since that libc6 version should be able to handle hwcap foo fine and certainly does NPTL fine with that file gone, but I haven't the time to track down where it came from and file a proper bug report. So, short answer, David, I bet you need to rm /etc/ld.so.nohwcap. > > David -- paul -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]