Sorry for the complex title. I'm not yet sure what is the error in my particular configuration.
I'm trying to write a Dockerfile to run Squeak on my raspberry pi (4b+, set up with 64 bit). I downloaded this release: `squeak.cog.spur_linux64x64_202003021730` and tried to execute it without any arguments for the beginning: ``` root@cadc927632ce:/# ./sqcogspur64linuxht/squeak not a dynamic executable Error. Could not determine platform's libc path for VM. Try forcing $PLATFORMLIBDIR in ./sqcogspur64linuxht/squeak, based on LIBC_SO. Please report what works to squeak [vm-dev] mail list. LIBC_SO= DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04 DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04.1 LTS" NAME="Ubuntu" VERSION="20.04.1 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.1 LTS" VERSION_ID="20.04" VERSION_CODENAME=focal UBUNTU_CODENAME=focal UNAME=Linux cadc927632ce 5.4.79-v8+ #1373 SMP PREEMPT Mon Nov 23 13:32:41 GMT 2020 aarch64 aarch64 aarch64 GNU/Linux System seems to be 64 bit. You may need to (re)install the 32-bit libraries. ``` What does this error message want to tell me? Which libraries should I install? I already gave this \[<<a href="https://github.com/pharo-project/pharo-launcher/issues/112>\" id="LPlnk118909" previewremoved="true">https://github.com/pharo-project/pharo-launcher/issues/112>\] a try, but I only get 404 errors for i386 repository - [it looks as if it is not available for Ubuntu 20.](https://eofla.wordpress.com/2020/04/01/ubuntu-20-04-lts-i386-repository-fade-out/) Can you help me? What libraries and packages do I need to install to get a (headful, planning to use `ssh -X`) running in my container? (PS: Probably a Squeak alternative for http://get.pharo.org/ could be helpful, too. :-))
Carpe Squeak!
|
Hi, You are trying to run a Linux x86-64 VM. But that is not the CPU you have. What you have is an ARMv8 CPU in either 32 or 64 bit mode. Since it's in 64bit mode then.... You need a 64 bit ARMv8 VM. A recent checkout of the git repostiory git clone https://github.com/OpenSmalltalk/opensmalltalk-vm.git Should work. The last I tried was at the beginning of December and that VM works fine on my ArmV8 systems. Check it out with git clone https://github.com/OpenSmalltalk/opensmalltalk-vm.git Then run ./scripts/updateSCCSVersions cd build.linux64ARMv8/squeak.cog.spur/build ./mvm and when it gets done in a few minutes you have a squeak binary and all the libraries. When it is done $ file local/squeak/squeak local/squeak/squeak: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=23893b13c1f61cd426946572ca6f5e374f3d647d, with debug_info, not stripped Should show you something similar. The first bit before the dynamically linked, is the important bit. cheers bruce 30 December 2020 16:12 "Thiede, Christoph" <[hidden email]> wrote:
|
Oh I forgot. The following apt installs probably are necessary. sudo apt-get install uuid-dev libcairo2-dev libpango1.0-dev libgl1-mesa-dev libgl1-mesa-glx libssl-dev sudo apt install libevdev-dev I think that is the minimal set necessary. Depending on your audio setup you might want. sudo apt install libpulse-dev cheers bruce 30 December 2020 19:17 "Bruce O'Neel" <[hidden email]> wrote:
|
> On 2020-12-30, at 10:20 AM, Bruce O'Neel <[hidden email]> wrote: > > sudo apt-get install uuid-dev libcairo2-dev libpango1.0-dev libgl1-mesa-dev libgl1-mesa-glx libssl-dev > sudo apt install libevdev-dev > > > I think that is the minimal set necessary. Depending on your audio setup you might want. > > sudo apt install libpulse-dev > That's interesting; I haven't seen libgl1-mesa-dev & libgl1-mesa-glx suggested before. I've been using mesa-common-dev which I can only guess must contain a lot of similar components - though B3DAcceleratorPlugin doesn't always make, possibly connected? Also libasound2-dev might be wanted if you have an ALSA setup rather than pulse (Pi are transitioning, as would be inferred from my recent travails with pulse). I've also been loading autoconf (do I still need it?), netatalk (to make life a little simpler) and libx11-dev since I starte Pi-ing. My current line to connect to my iMac via /etc/fstab looks like - //192.168.1.65/tim /home/pi/DizietFS cifs _netdev,vers=3.0,noserverino,noperm,username=tim,password=XXXXX,uid=1000,gid=pi,iocharset=utf8,x-systemd.automount 0 0 Those parameters seem to change randomly and I have never, ever, found a decent explanation for what goes in there. One might argue that an nfs connection would be better, but after years of using one, it started to cause problems and I abandoned. tim -- tim Rowledge; [hidden email]; http://www.rowledge.org/tim Fractured Idiom:- L'ETAT, C'EST MOE - All the world's a stooge |
Thanks for the instructions, Bruce! I needed to install two more packages,
gcc and make, but then the compilation succeeded. I posted my next problem (mprotect error) in the GitHub thread [1] - let's join the split conversation there again :-) [1] https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/544#issuecomment-752803523 ----- Carpe Squeak! -- Sent from: http://forum.world.st/Squeak-Dev-f45488.html
Carpe Squeak!
|
In reply to this post by Bruce O'Neel-2
On 30/12/20 11:50 pm, Bruce O'Neel wrote:
> sudo apt-get install uuid-dev libcairo2-dev libpango1.0-dev > libgl1-mesa-dev libgl1-mesa-glx libssl-dev > > sudo apt install libevdev-dev > ... I think that is the minimal set necessary. pango-dev requires cairo and mesa-dev requires mesa-glx respectively, so a minimal set of packages would be: $ sudo apt-get install uuid-dev libpango1.0-dev libgl1-mesa-dev libssl-dev libevdev-dev HTH .. Subbu |
Von: Squeak-dev <[hidden email]> im Auftrag von K K Subbu <[hidden email]>
Gesendet: Donnerstag, 31. Dezember 2020 07:48:07 An: [hidden email] Betreff: Re: [squeak-dev] Fwd: [OpenSmalltalk/opensmalltalk-vm] Trouble running OSVM in an Ubuntu 20/aarch64 docker (raspi) (#544) On 30/12/20 11:50 pm, Bruce O'Neel wrote:
> sudo apt-get install uuid-dev libcairo2-dev libpango1.0-dev > libgl1-mesa-dev libgl1-mesa-glx libssl-dev > > sudo apt install libevdev-dev > ... I think that is the minimal set necessary. pango-dev requires cairo and mesa-dev requires mesa-glx respectively, so a minimal set of packages would be: $ sudo apt-get install uuid-dev libpango1.0-dev libgl1-mesa-dev libssl-dev libevdev-dev HTH .. Subbu
Carpe Squeak!
|
> On 2021-01-01, at 10:00 AM, Thiede, Christoph <[hidden email]> wrote: > > Hm, it still fails with the mprotect permission denied error :( Are we seeing some aspect of container things restricting access? Compare to my recent 'Illegal Instruction' isue on a container on the phone. tim -- tim Rowledge; [hidden email]; http://www.rowledge.org/tim "I love deadlines. I love the whooshing noise they make as they go by." Douglas Adams, R.I.P. |
Hi all,
thanks a lot for your help. In the meantime, I have finally been able to succeed in the entire build process. Because it was a quite costly setup, I have summarized all relevant docker files and build scripts in this repository: https://github.com/LinqLover/squeak-raspi-docker Please feel free to add your suggestions for improvements or to share this link! :-) Happy Squeaking, Christoph ----- Carpe Squeak! -- Sent from: http://forum.world.st/Squeak-Dev-f45488.html
Carpe Squeak!
|
Free forum by Nabble | Edit this page |