Hi Nahuel,

On Thu, Jan 19, 2012 at 8:52 AM, Nahuel Garbezza <[email protected]>wrote:

> On 27 December 2011 18:39, Eliot Miranda <[email protected]> wrote:
> > Hi Phillipe,
> >
> > On Tue, Dec 27, 2011 at 1:33 PM, Philippe Marschall <[email protected]>
> 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?
> >
> >
>
> Hi,
>
> I had the same error on Ubuntu 11.10 (32bit). This is the output from ldd:
>
> $ ldd lib/squeak/4.0-2522/squeak
>        linux-gate.so.1 =>  (0x00f42000)
>        libutil.so.1 => /lib/i386-linux-gnu/libutil.so.1 (0x0066e000)
>        libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0x00cfc000)
>        libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0x004af000)
>        libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0x005b6000)
>        libnsl.so.1 => /lib/i386-linux-gnu/libnsl.so.1 (0x00b03000)
>        libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0x00110000)
>        /lib/ld-linux.so.2 (0x00bf3000)
>
> So I had to modify the squeak launcher in order to get it working:
>
> 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";;
> /lib/i386-linux-gnu/libc*)              SVMLLP="/lib/i386-linux-gnu";;
> *)                              echo "can't infer base LD_LIBRARY_PATH.
> Aborting." 1>&2;
>                                exit 1
>

Thanks.  But what's the corresponding /usr/lib?  e.g. is there a
/usr/lib/i386-linux-gnu?  In this context LD_LIBRARY_PATH needs to contain
a /lib and a /usr/lib.


> Cheers,
> Nahuel.
>
>


-- 
best,
Eliot

Reply via email to