and is there a /lib32/tls? �(I hope not). �Does anyone have a linux system with either of the following?
� � /lib32/tls
� � /lib64/tls

TIA
Eliot

On Tue, Dec 27, 2011 at 1:39 PM, Eliot Miranda <eliot.miranda@gmail.com> wrote:
Hi Phillipe,

On Tue, Dec 27, 2011 at 1:33 PM, Philippe Marschall <kustos@gmx.net> wrote:
On 27.12.2011 19:18, Eliot Miranda wrote:
Hi Phillipe,

� � what does ldd answer for the squeak vm?

$ldd coglinux/lib/squeak/4.0-2515/squeak
� � � �linux-gate.so.1 => �(0xffffe000)
� � � �libutil.so.1 => /lib32/libutil.so.1 (0xf76cb000)
� � � �libdl.so.2 => /lib32/libdl.so.2 (0xf76c7000)
� � � �libpthread.so.0 => /lib32/libpthread.so.0 (0xf76ad000)
� � � �libm.so.6 => /lib32/libm.so.6 (0xf7687000)
� � � �libnsl.so.1 => /lib32/libnsl.so.1 (0xf766f000)
� � � �libc.so.6 => /lib32/libc.so.6 (0xf750c000)
� � � �/lib/ld-linux.so.2 (0xf76fe000)

It's a 64bit system with 32bit compatibility libraries (only for cog, everything else is 64bit).

Ah, ok. �Makes sense. �So I expect the relevant code needs to read

# On some old linuxes there is a /lib/tls thread-local-storage version of the C
# library which the VM may use and if so should take precedence over /lib libc.
case `/usr/bin/ldd "$BIN/squeak" | /bin/fgrep /libc. | sed 's/^.*=> //'` in
/lib/tls/libc*) SVMLLP="/lib/tls:/lib:/usr/lib/tls:/usr/lib";;
/lib/libc*) � � SVMLLP="/lib:/usr/lib";;
/lib32/libc*) � SVMLLP="/lib32:/usr/lib32";;
*) � � � � � � �echo "can't infer base LD_LIBRARY_PATH. Aborting." 1>&2;
� � � � � � � � exit 1
esac

Can you confirm that there is a /usr/lib32 for the 32-bit equivalent of /usr/lib?



Cheers
Philippe





--
best,
Eliot




--
best,
Eliot