Blaisorblade wrote:

Have you found a ready-made filesystem? In that case, I'd like to test it.

I made this filesystem by myself. I simply installed needed packages from slackware distribution (10.2) in some directory (perl script for that job is attached. slackware files can be downloaded with this:
# rsync -av --delete \
rsync://ftp.heanet.ie/mirrors/ftp.slackware.com/pub/slackware/slackware-10.2 \ /your/directory

If you want I can put for you my filesystem somewhere in the net.

No, ldd is trustworthy, the real question is: what was enabled when compiling what you find in /lib/tls?

or TLS and UML works for Slacksware 10.2 ???

It is possible - different glibc's on different distros are more or less tolerant.

To verify what's included in your libc, run it. As in:
/lib/libc.so.6
and /lib/tls/libc.so.6

and post the output.

Here's mine, with highlighted relevant lines:

$ /lib/tls/libc.so.6

GNU C Library stable release version 2.3.4, by Roland McGrath et al.
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.4.3-20050110 (Gentoo Linux 3.4.3.20050110-r1, ssp-3.4.3.20050110-0, pie-8.7.7).
Compiled on a Linux 2.6.8 system on 2005-04-07.
Available extensions:
       GNU libio by Per Bothner
       crypt add-on version 2.1 by Michael Glad and others
# LOOK LOOK LOOK
       Native POSIX Threads Library by Ulrich Drepper et al
# LOOK LOOK LOOK
# This is present instead on most non-TLS glibc:
#        linuxthreads-0.10 by Xavier Leroy
       The C stubs add-on version 2.1.2.
       BIND-8.2.3-T5B
       NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
       Glibc-2.0 compatibility add-on by Cristian Gafton
       GNU Libidn by Simon Josefsson
#On old glibc, this is included too:
#        libthread_db work sponsored by Alpha Processor Inc
# LOOK LOOK LOOK
Thread-local storage support included.
# LOOK LOOK LOOK
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.

The first line is about NPTL, the second about what's technically TLS (they usually go hand-in-hand, but that's not always the case).
on my UML slack (10.2) it looks like this:

vslack:/root# /lib/tls/libc.so.6
GNU C Library stable release version 2.3.5, by Roland McGrath et al.
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 3.3.6.
Compiled on a Linux 2.6.13 system on 2005-09-10.
Available extensions:
       GNU libio by Per Bothner
       crypt add-on version 2.1 by Michael Glad and others
       GNU Libidn by Simon Josefsson
       Native POSIX Threads Library by Ulrich Drepper et al
       BIND-8.2.3-T5B
       NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
Thread-local storage support included.
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.

According to slackware readme files, all packages was build with that libc.

Kind rgds,
Konrad
#!/usr/bin/perl

#$Id: slack_current.pl,v 1.1 2005/09/10 19:30:23 ludw Exp $

$slack="/home/ludw/slackware-10.2";
@groups=("a", "ap", "d", "l", "n", "y");


opendir(PATCH, "$slack/patches/packages");
@patches = grep /tgz$/, readdir PATCH;

foreach $i (@groups) {
        print "installing group $i ...\n";
        open(FILE,"$slack/slackware/$i/tagfile");
        while (<FILE>) {
                next if /^#/;
                chop;
                ($package, $level) = split(":");

                #check if we already have patched version of package
                if (grep /\Q$package/, @patches) {
                        system("/sbin/installpkg -infobox -root $ENV{'PWD'} 
$slack/patches/packages/$package-*tgz");
                } else {
                        system("/sbin/installpkg -infobox -root $ENV{'PWD'} 
$slack/slackware/$i/$package-*tgz");
                };

        }
        close(FILE);
}

closedir(PATCH);

system("/sbin/ldconfig -root $ENV{'PWD'}");

Reply via email to