When I run winecfg, I got:
wine: glibc >= 2.3 without NPTL or TLS is not a supported combination. Please upgrade to a glibc with NPTL support.
Should I interpret that message, that:
- NPTL is required
- I should use glibc-2.2 or lower
If 1) that's probably end of game per https://lwn.net/Articles/10465/
- "- The 2.5.36 kernel or above must be installed and used."
- "The current snapshot for glibc 2.3 (or glibc 2.3 when released) is necessary."
- "The general compiler requirement for glibc is at least gcc 3.2."
So for further steps 1) or 2) ?
A glibc using TLS might still work without NPTL, though that may require glibc 2.3 anyway.
Yes, TLS was added to 2.5.29: https://www.kernel.org/pub/linux/kernel/v2.5/ChangeLog-2.5.29
...and further improved in 2.5.32: https://lwn.net/Articles/7591/
Note that the above requirements are for building glibc, not running it.
Short version: hint for 2.3 is probably not correct
Longer version based on Glibc's release notes:
glibc-2.3: Even though TLS support is mentioned as one new feature for this release the default is not to build glibc with TLS support enabled. This has several reasons, most of which are out of control of the glibc developers. Therefore it is necessry to *not* use the --with-tls option for configure.
=no support for TLS & NPTL in glibc-2.3.
glibc-2.3.2: ELF thread-local storage support (TLS) now works on x86-64. glibc-2.3.2: The sources were also prepared to be used with the NPTL thread library which is not yet included.
=no support for NPTL in glibc-2.3.2 itself
glibc-2.3.3: The main glibc-2.3.3 release package contains the Native POSIX Threads Library (NPTL) contributed by Ulrich Drepper, which supports Linux 2.6 kernels only.
The NPTL support was backported to older kernels IIRC.
It seems, that RedHat did that... http://rpm.pbone.net/index.php3/stat/4/idpl/18727833/dir/fedora_1/com/kernel...
I'm not fan of Fedora, so i could try your initially suggested "A glibc using TLS might still work without NPTL...", i.e. kernel-2.5.32 + rebuild of glibc-2.3.2, but i find that glibc recipe pretty painful. But if you are expecting rather 2.4.xx results, that would be for some Fedora/RedHat fans.
Anyway, i don't see chances for anything like subject mentioned linux v2.3.31.
One more note: Debian Sarge includes glibc-2.3.2 and shows: "Thread-local storage support included" and does not mention NPTL. But kernel is 2.4.27 (without kernel side TLS), so winecfg complains. So i could also easily try Sarge's alternative kernel 2.6.8 instead of 2.4.27. Then TLS is supported in this glibc without NPTL and see if, winecfg is happy. That is the easiest step.