I updated the script.  See below.

On Fri, Sep 14, 2012 at 10:26 AM, Eliot Miranda <eliot.mira...@gmail.com>wrote:

>
>
> On Thu, Sep 13, 2012 at 11:08 PM, Tudor Girba <tu...@tudorgirba.com>wrote:
>
>> Hi,
>>
>> Thanks for the reply and suggestion. I slept over it and when I woke
>> up I realized that maybe something went wrong with installing
>> ia32-libs. I reinstalled them and now things look fine. I get:
>> lib/squeak/4.0-2585# ldd squeak
>>         libutil.so.1 => /lib32/libutil.so.1 (0xb7efe000)
>>         libdl.so.2 => /lib32/libdl.so.2 (0xb7efa000)
>>         libpthread.so.0 => /lib32/libpthread.so.0 (0xb7ee0000)
>>         libm.so.6 => /lib32/libm.so.6 (0xb7eba000)
>>         libnsl.so.1 => /lib32/libnsl.so.1 (0xb7ea3000)
>>         libc.so.6 => /lib32/libc.so.6 (0xb7d5c000)
>>         /lib/ld-linux.so.2 (0xb7f0d000)
>>
>> Cheers,
>> Doru
>>
>
> Cool.  I think the script could be rewritten so that if SVMLLP can't be
> determined and the system is 64-bit it makes a suggestion to check that the
> 32-bit libraries are correctly installed.  I wonder is there a way of
> checking that they are correctly installed.  One obvious thing to do is to
> match the case where ldd doesn't produce any output.
>

Author: eliot
Date: 2012-09-14 10:40:40 -0700 (Fri, 14 Sep 2012)
New Revision: 2604

Modified:
   branches/Cog/platforms/unix/config/bin.squeak.sh.in
   branches/Cog/platforms/unix/config/squeak.sh.in
Log:
On unix have the start-up script produce an hopefully helpful error message
when ldd doesn't run on 64-bit installations.


Modified: branches/Cog/platforms/unix/config/bin.squeak.sh.in
===================================================================
--- branches/Cog/platforms/unix/config/bin.squeak.sh.in 2012-09-13 20:00:16
UTC (rev 2603)
+++ branches/Cog/platforms/unix/config/bin.squeak.sh.in 2012-09-14 17:40:40
UTC (rev 2604)
@@ -25,7 +25,12 @@
        SVMLLP="/lib/tls/i686/cmov:/lib:/usr/lib/tls/i686/cmov:/usr/lib";;
 /lib/tls/i686/nosegneg/libc*)  \

SVMLLP="/lib/i686/nosegneg/tls:/lib:/usr/lib/i686/nosegneg/tls:/usr/lib";;
-*)     echo "can't infer base LD_LIBRARY_PATH. Aborting." 1>&2;
+"")    case `/bin/uname -m || /usr/bin/uname -m` in
+       *64*)   echo "/usr/bin/ldd didn't produce any output and the system
is 64 bit.  You may need to (re)install the 32-bit libraries." 1>&2;;
+       *)      echo "/usr/bin/ldd didn't produce any output. Can't infer
base LD_LIBRARY_PATH. Aborting." 1>&2
+       esac
+       exit 1;;
+*)     echo "Can't infer base LD_LIBRARY_PATH. Aborting." 1>&2
        exit 1
 esac


>
>> On Thu, Sep 13, 2012 at 11:35 PM, Eliot Miranda <eliot.mira...@gmail.com>
>> wrote:
>> >
>> >
>> > On Thu, Sep 13, 2012 at 12:24 PM, Tudor Girba <tu...@tudorgirba.com>
>> wrote:
>> >>
>> >> Hi,
>> >>
>> >> Thanks for the suggestion. I do not know exactly what it means, but I
>> >> tried and the output does not look like yours (see below). Any idea
>> >> what "not a dynamic executable" means?
>> >
>> >
>> > it means its not recognized by your OS as a valid executable file.  So
>> > you're out of luck.  (Forget my private email).  So this OS can't run
>> 32-bit
>> > executables built on other linuxes.  If you compile hello world with
>> -m32
>> > what does file answer?  e.g.
>> >
>> > McStalker.oscogvm$ cat >hw.c <<END
>> >> int main() { printf("hello world\n"); return 0; }
>> >> END
>> > McStalker.oscogvm$ cc -o hw -m32 hw.c
>> > hw.c: In function 'main':
>> > hw.c:1: warning: incompatible implicit declaration of built-in function
>> > 'printf'
>> > McStalker.oscogvm$ ./hw
>> > hello world
>> > McStalker.oscogvm$ file hw
>> > hw: Mach-O executable i386
>> > McStalker.oscogvm$
>> >
>> > and what does file answer for squeak?
>> >>
>> >>
>> >> lib/squeak/4.0-2585# ls
>> >> B3DAcceleratorPlugin  SqueakFFIPrims       squeak
>> >> vm-display-null
>> >> vm-sound-null
>> >> BochsIA32Plugin       UUIDPlugin           vm-display-X11
>>  vm-sound-ALSA
>> >> LocalePlugin          UnixOSProcessPlugin  vm-display-fbdev
>>  vm-sound-OSS
>> >>
>> >> lib/squeak/4.0-2585# ldd squeak
>> >>         not a dynamic executable
>> >>
>> >> lib/squeak/4.0-2585# ldd vm-display-X11
>> >>         not a dynamic executable
>> >>
>> >> lib/squeak/4.0-2585# ls -al
>> >> total 9468
>> >> drwxr-xr-x 2 root root    4096 Sep 12 21:51 .
>> >> drwxr-xr-x 3 root root    4096 Sep 12 21:51 ..
>> >> -rwxr-xr-x 1 root root  144996 Sep 12 21:51 B3DAcceleratorPlugin
>> >> -rwxr-xr-x 1 root root 5376041 Sep 12 21:51 BochsIA32Plugin
>> >> -rwxr-xr-x 1 root root   31714 Sep 12 21:51 LocalePlugin
>> >> -rwxr-xr-x 1 root root   77720 Sep 12 21:51 SqueakFFIPrims
>> >> -rwxr-xr-x 1 root root   19617 Sep 12 21:51 UUIDPlugin
>> >> -rwxr-xr-x 1 root root   90561 Sep 12 21:51 UnixOSProcessPlugin
>> >> -rwxr-xr-x 1 root root 3408704 Sep 12 21:51 squeak
>> >> -rwxr-xr-x 1 root root  235076 Sep 12 21:51 vm-display-X11
>> >> -rwxr-xr-x 1 root root   94225 Sep 12 21:51 vm-display-fbdev
>> >> -rwxr-xr-x 1 root root   27549 Sep 12 21:51 vm-display-null
>> >> -rwxr-xr-x 1 root root   42045 Sep 12 21:51 vm-sound-ALSA
>> >> -rwxr-xr-x 1 root root   56587 Sep 12 21:51 vm-sound-OSS
>> >> -rwxr-xr-x 1 root root   13377 Sep 12 21:51 vm-sound-null
>> >>
>> >> Cheers,
>> >> Doru
>> >>
>> >>
>> >> On Thu, Sep 13, 2012 at 9:14 PM, Bernardo Ezequiel Contreras
>> >> <vonbecm...@gmail.com> wrote:
>> >> > for instance, on ubuntu maverick and with eliot's vm
>> >> >
>> >> > ~/bin/pharo-vm/cog/r2502/lib/squeak/4.0-2502$ ls
>> >> > B3DAcceleratorPlugin  squeak             UnixOSProcessPlugin
>> >> > vm-display-X11
>> >> > LocalePlugin          SqueakFFIPrims     UUIDPlugin
>> >> > vm-sound-ALSA
>> >> > PharoV10.sources      SqueakV41.sources  vm-display-null
>> >> > vm-sound-null
>> >> > ~/bin/pharo-vm/cog/r2502/lib/squeak/4.0-2502$ ldd squeak
>> >> >         linux-gate.so.1 =>  (0x00396000)
>> >> >         libutil.so.1 => /lib/libutil.so.1 (0x00655000)
>> >> >         libdl.so.2 => /lib/libdl.so.2 (0x00987000)
>> >> >         libpthread.so.0 => /lib/libpthread.so.0 (0x00373000)
>> >> >         libm.so.6 => /lib/libm.so.6 (0x00e07000)
>> >> >         libnsl.so.1 => /lib/libnsl.so.1 (0x00d73000)
>> >> >         libc.so.6 => /lib/libc.so.6 (0x00e2f000)
>> >> >         /lib/ld-linux.so.2 (0x0084a000)
>> >> > or
>> >> > $ ldd vm-display-X11
>> >> >         linux-gate.so.1 =>  (0x008e2000)
>> >> >         libGL.so.1 => /usr/lib/mesa/libGL.so.1 (0x00901000)
>> >> >         libXext.so.6 => /usr/lib/libXext.so.6 (0x00537000)
>> >> >         libSM.so.6 => /usr/lib/libSM.so.6 (0x00518000)
>> >> >         libICE.so.6 => /usr/lib/libICE.so.6 (0x007ec000)
>> >> >         libdl.so.2 => /lib/libdl.so.2 (0x0075e000)
>> >> >         libpthread.so.0 => /lib/libpthread.so.0 (0x00110000)
>> >> >         libm.so.6 => /lib/libm.so.6 (0x0012a000)
>> >> >         libnsl.so.1 => /lib/libnsl.so.1 (0x00c90000)
>> >> >         libX11.so.6 => /usr/lib/libX11.so.6 (0x005cd000)
>> >> >         libc.so.6 => /lib/libc.so.6 (0x00150000)
>> >> >         libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0x002ad000)
>> >> >         libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00c0e000)
>> >> >         libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x002b1000)
>> >> >         libdrm.so.2 => /lib/libdrm.so.2 (0x00d6e000)
>> >> >         libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0036d000)
>> >> >         libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x002b7000)
>> >> >         libuuid.so.1 => /lib/libuuid.so.1 (0x00719000)
>> >> >         /lib/ld-linux.so.2 (0x0034f000)
>> >> >         libxcb.so.1 => /usr/lib/libxcb.so.1 (0x002d3000)
>> >> >         librt.so.1 => /lib/librt.so.1 (0x002ed000)
>> >> >         libXau.so.6 => /usr/lib/libXau.so.6 (0x002f6000)
>> >> >         libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x002fa000)
>> >> >
>> >> >
>> >> >
>> >> > cheers
>> >> >
>> >> > On Thu, Sep 13, 2012 at 4:05 PM, Bernardo Ezequiel Contreras
>> >> > <vonbecm...@gmail.com> wrote:
>> >> >>
>> >> >> Tudor,
>> >> >>   do a ldd on the binary, and see if you have installed all the
>> >> >> required
>> >> >> libraries for the system
>> >> >> http://linux.die.net/man/1/ldd
>> >> >>
>> >> >> At home, i'm using debian squeeze and it works.
>> >> >>
>> >> >> cheers
>> >> >>
>> >> >>
>> >> >> On Thu, Sep 13, 2012 at 3:53 PM, Tudor Girba <tu...@tudorgirba.com>
>> >> >> wrote:
>> >> >>>
>> >> >>> Hi,
>> >> >>>
>> >> >>> I would need to start a Pharo/Pier image on Debian 6.0.4 from the
>> >> >>> command line using Cog. I tried to use both the Cog-VM (from Pharo)
>> >> >>> and the Cog (from Eliot), but none work:
>> >> >>>
>> >> >>> - If I run the Cog from Eliot returns
>> >> >>> "can't infer base LD_LIBRARY_PATH. Aborting."
>> >> >>>
>> >> >>> - I could not even get the Pharo Cog to run. Even if the rights for
>> >> >>> the VM are correct, it still says:
>> >> >>> "-bash: ./CogVM: No such file or directory"
>> >> >>>
>> >> >>> Any hints as to how to proceed?
>> >> >>>
>> >> >>> Cheers,
>> >> >>> Doru
>> >> >>>
>> >> >>> --
>> >> >>> www.tudorgirba.com
>> >> >>>
>> >> >>> "Every thing has its own flow"
>> >> >>>
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Bernardo E.C.
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > --
>> >> > Bernardo E.C.
>> >>
>> >>
>> >>
>> >> --
>> >> www.tudorgirba.com
>> >>
>> >> "Every thing has its own flow"
>> >>
>> >
>> >
>> >
>> > --
>> > best,
>> > Eliot
>> >
>>
>>
>>
>> --
>> www.tudorgirba.com
>>
>> "Every thing has its own flow"
>>
>>
>
>
> --
> best,
> Eliot
>
>


-- 
best,
Eliot

Reply via email to