General protection fault starting VM on Manaro Linux

32 views
Skip to first unread message

Hernán Morales

unread,
May 17, 2019, 4:05:00 PM5/17/19
to VA Smalltalk
Just managed to install VA Smalltalk 9.1 in a Manjaro Linux (Arch based Linux distribution).
However I couldn't load the VM yet:

# export DISPLAY='IP:0.0'                                                                                                                                                              
# ./vasetup                                                                                                                                                                        
+ IMAGE=                                                                                                                                                                                    
+ IOPTION=0                                                                                                                                                                                 
++ readlink -f ./environments                                                                                                                                                               
+ script_path=/usr/local/VASmalltalk/9.1x64/environments/environments                                                                                                                       
++ dirname /usr/local/VASmalltalk/9.1x64/environments/environments                                                                                                                          
+ environments_folder=/usr/local/VASmalltalk/9.1x64/environments                                                                                                                            
++ basename /usr/local/VASmalltalk/9.1x64/environments/environments                                                                                                                         
+ environments_script=environments                                                                                                                                                          
+ cd /usr/local/VASmalltalk/9.1x64/environments                                                                                                       
+ export PATH=.:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl            
+ PATH=.:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl                   
+ export LD_LIBRARY_PATH=.:                                                                                                                           
+ LD_LIBRARY_PATH=.:                                                                                                                                  
+ test 0 -eq 0                                                                                                                                        
+ test -r environments.icx                                                                                                                            
+ IMAGE=-ienvironments.icx                                                                                                                            
+ ./es -no_break -ienvironments.icx

+ cd /usr/local/VASmalltalk/9.1x64/environments
+ export PATH=.:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
+ PATH=.:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
+ export LD_LIBRARY_PATH=.:
+ LD_LIBRARY_PATH=.:
+ test 0 -eq 0
+ test -r environments.icx
+ IMAGE=-ienvironments.icx
+ ./es -no_break -ienvironments.icx

VA Smalltalk, Version 8.6.1
VM Timestamp: 4.0,(NC) 7/24/2014 (86)
(C) Copyright Instantiations 1994, 2014.  All rights reserved.
(C) Copyright International Business Machines Corp. 1994, 2006.  All rights reserved.

Virtual Machine PID: 3104
Commandline args {
 -no_break
 -ienvironments.icx
 }

VM Options {
  }

The following error(s) were detected during the startup sequence which may interfere with correct operation:


1) Primitive failed calling XtOpenDisplay from PlatformFunction>>#callWith:with:with:with:with:with:with:with: due to General protection fault
2) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
3) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
4) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
5) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
6) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
7) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
8) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
9) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
10) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
11) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
12) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
13) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
14) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
15) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
16) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
17) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
18) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
19) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
20) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand defaultFontStruct
21) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand internAtom:onlyIfExists:
22) Primitive failed in: Object>>#at:put: due to Index out of range in argument 1
23) (ExMessageNotUnderstood) An exception has occurred: UndefinedObject does not understand createFontCursor:

It is also strange I have 3 es process running:

$ ps xau | grep ienvironments
root      3338  4.4  0.5  38276 10952 pts/2    Sl+  16:57   0:00 ./es -no_break -ienvironments.icx
root      3339  0.0  0.2   7920  4620 pts/2    S+   16:57   0:00 ./es -no_break -ienvironments.icx
root      3340  0.0  0.1   7788  3792 pts/2    S+   16:57   0:00 ./es -no_break -ienvironments.icx

Any ideas?

Cheers,

Hernan


Mariano Martinez Peck

unread,
May 17, 2019, 4:14:44 PM5/17/19
to VA Smalltalk
Can you do a ldd on the esvm40.so of the environments tools binaries? and show us the output? Likely the installer failed to install some dependencies. In fact I think o know what the problem is.. Will give you a detailed answer tonight. 
You are missing the 32 bits libs because environments tools is still 32 bits even if va is 64 in 91. This is fixed in upcoming 9.2


--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to va-smalltalk...@googlegroups.com.
To post to this group, send email to va-sma...@googlegroups.com.
Visit this group at https://groups.google.com/group/va-smalltalk.
To view this discussion on the web visit https://groups.google.com/d/msgid/va-smalltalk/3e1e95b3-6666-4f09-9e68-b254fd2aa8c1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hernán Morales Durand

unread,
May 17, 2019, 4:33:00 PM5/17/19
to va-sma...@googlegroups.com
Of course, here it is:

# ldd esvm40.so
        linux-vdso.so.1 (0x00007ffc265e3000)
        libc.so.6 => /usr/lib/libc.so.6 (0x00007fbc94a47000)
        libdl.so.2 => /usr/lib/libdl.so.2 (0x00007fbc94a42000)
        libm.so.6 => /usr/lib/libm.so.6 (0x00007fbc948fc000)
        libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007fbc948db000)
        libXm.so.4 => /usr/lib/libXm.so.4 (0x00007fbc94408000)
        libXt.so.6 => /usr/lib/libXt.so.6 (0x00007fbc9419f000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x00007fbc9405e000)
        /usr/lib64/ld-linux-x86-64.so.2 (0x00007fbc9505b000)
        libXmu.so.6 => /usr/lib/libXmu.so.6 (0x00007fbc94043000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x00007fbc9402e000)
        libXp.so.6 => /usr/lib/libXp.so.6 (0x00007fbc93e25000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00007fbc93dde000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007fbc93d0f000)
        libXft.so.2 => /usr/lib/libXft.so.2 (0x00007fbc93cf5000)
        libjpeg.so.8 => /usr/lib/libjpeg.so.8 (0x00007fbc93c60000)
        libpng16.so.16 => /usr/lib/libpng16.so.16 (0x00007fbc93c28000)
        libSM.so.6 => /usr/lib/libSM.so.6 (0x00007fbc93c1d000)
        libICE.so.6 => /usr/lib/libICE.so.6 (0x00007fbc93a01000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007fbc939d7000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x00007fbc939d0000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007fbc93994000)
        libuuid.so.1 => /usr/lib/libuuid.so.1 (0x00007fbc9398b000)
        libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x00007fbc93978000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007fbc93761000)
        libharfbuzz.so.0 => /usr/lib/libharfbuzz.so.0 (0x00007fbc93665000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00007fbc93656000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007fbc9364e000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007fbc93528000)
        libgraphite2.so.3 => /usr/lib/libgraphite2.so.3 (0x00007fbc93503000)
        libpcre.so.1 => /usr/lib/libpcre.so.1 (0x00007fbc93490000)


If you have a list of the 32-bit libs to install it would be cool :)
Thank you Mariano,

Cheers,

Hernan


Mariano Martinez Peck

unread,
May 17, 2019, 4:34:50 PM5/17/19
to VA Smalltalk
Hmmm there is none not found. Did you try on root /bin or in environments/bin? I want the latter.
Yes I have libs instructions but I am away from computer now 

Hernán Morales Durand

unread,
May 17, 2019, 4:37:34 PM5/17/19
to va-sma...@googlegroups.com
Ah, I was checking on /usr/local/VASmalltalk/9.1x64/bin
Now on environments:

# ldd esvm40.so
        linux-gate.so.1 (0xf7ef2000)
        libpthread.so.0 => /usr/lib32/libpthread.so.0 (0xf7a31000)
        libm.so.6 => /usr/lib32/libm.so.6 (0xf7965000)
        libdl.so.2 => /usr/lib32/libdl.so.2 (0xf795f000)
        libc.so.6 => /usr/lib32/libc.so.6 (0xf7783000)
        libnsl.so.1 => /usr/lib32/libnsl.so.1 (0xf7768000)
        /usr/lib/ld-linux.so.2 (0xf7ef4000)

Mariano Martinez Peck

unread,
May 17, 2019, 4:39:00 PM5/17/19
to VA Smalltalk
That's weird... There is none not found. OK I will check later.



Hernán Morales Durand

unread,
May 17, 2019, 4:39:30 PM5/17/19
to va-sma...@googlegroups.com
And one more thing, strangely:

# ldd es
        linux-gate.so.1 (0xf7fa2000)
        esvm40.so => not found
        libpthread.so.0 => /usr/lib32/libpthread.so.0 (0xf7f3d000)
        libm.so.6 => /usr/lib32/libm.so.6 (0xf7e71000)
        libdl.so.2 => /usr/lib32/libdl.so.2 (0xf7e6b000)
        libc.so.6 => /usr/lib32/libc.so.6 (0xf7c8f000)
        libnsl.so.1 => /usr/lib32/libnsl.so.1 (0xf7c74000)
        /lib/ld-linux.so.2 => /usr/lib/ld-linux.so.2 (0xf7fa4000)


Mariano Martinez Peck

unread,
May 17, 2019, 4:41:22 PM5/17/19
to VA Smalltalk
That is correct. That one resolves correctly when run because of the export of the LD_LIBRARY_PATH which would find it... 

Mariano Martinez Peck

unread,
May 17, 2019, 9:33:36 PM5/17/19
to VA Smalltalk
Hi Hernan,

Below is a few examples for different Linux. Hopefully you can get an idea of what would be needed for Arch. 
BTW, after trying that, it would also be handy if you can put an `echo $LD_LIBRARY_PATH` in the vasetup  and let us know the result. 
BTW2 neither Manjaro or Arch is "officially" supported. 
BTW3 its the first time I see a primitive failure in XtOpenDisplay...


  • XUbuntu/Ubuntu/Mint
    • 32bit
      • sudo apt install xterm
      • sudo apt install libxm4
      • sudo apt install libssl-dev   (optional - for SSL support)
    • 64bit
      • sudo apt install xterm
      • sudo apt install libxm4
      • sudo apt install libssl-dev   (optional - for SSL support)
    • 32bit on 64bit OS
      • sudo apt install xterm
      • sudo apt install libxm4:i386
      • sudo apt install libssl-dev:1386   (optional - for SSL support)
  • Raspbian
    • 32bit
      • sudo apt-get install xterm libxm4 libssl-dev xfonts-base xfonts-75dpi xfonts-100dpi
  • Fedora
    • 32bit
      • sudo dnf install xterm
      • sudo dnf install openmotif
      • Q: is libssl not needed on this platform?
    • 64bit
      • sudo dnf install xterm
      • sudo dnf install openmotif
      • Q: is libssl not needed on this platform?
    • 32bit on 64bit OS
      • sudo apt install xterm
      • sudo apt install openmotif:i386 ?
      • Q: is libssl not needed on this platform?
  • Open SUSE
    • 32bit (Only Tumbleweed offers 32 bits OS... Leap is only 64 bits)
      • sudo zypper install xterm
      • sudo zypper install openmotif
      • sudo zypper install openssl   (optional - for SSL support)
    • 64bit
      • sudo zypper install xterm
      • sudo zypper install openmotif
      • sudo zypper install openssl   (optional - for SSL support)
    • 32bit on 64bit OS
      • sudo zypper install xterm
      • sudo zypper install motif-devel-32bit
      • sudo zypper install libopenssl1_1-32bit (optional - for SSL support)
--
Mariano Martinez Peck
Software Engineer, Instantiations Inc.

Hernán Morales Durand

unread,
May 17, 2019, 11:12:52 PM5/17/19
to va-sma...@googlegroups.com
El vie., 17 may. 2019 a las 22:33, 'Mariano Martinez Peck' via VA Smalltalk (<va-sma...@googlegroups.com>) escribió:
Hi Hernan,

Below is a few examples for different Linux. Hopefully you can get an idea of what would be needed for Arch. 
BTW, after trying that, it would also be handy if you can put an `echo $LD_LIBRARY_PATH` in the vasetup  and let us know the result. 

Ok will try that however I think this has to do with X Window display configuration (see below)
 
BTW2 neither Manjaro or Arch is "officially" supported. 

Ok, I just converted the .deb to pkg and then modified the vainstall script:

....
if [ "$OS" = "Linux" ] || [ "$OS" = "manjaro" ]; then
                pformAdminToolsInstallString="pacman -U vasmalltalk-9.1x64-admintools-9.1.0-1-x86_64.pkg.tar.gz"
                pformClientInstallString="pacman -U vasmalltalk-9.1x64-client-9.1.0-1-x86_64.pkg.tar.gz"
                pformManagerInstallString="pacman -U vasmalltalk-9.1x64-manager-9.1.0-1-x86_64.pkg.tar.gz"
                pformXtermInstallString="pacman -Sy xterm"
                if [ "x64" = "x86" ] && [ "$osType" = "x86_64" ]; then
                        pformMotifInstallString="pacman -Sy libxm4:i386"
                else
                        pformMotifInstallString="pacman -Sy libxm4"
                fi
elif [ "$OS" = "ubuntu" ] || [ "$OS" = "linuxmint" ]; then
....
 
Now I pasted the chunk I remembered to modify the libxm4 which I found is lib32-openmotif on Arch based distros, although I need to check because I did a really fast search.

BTW3 its the first time I see a primitive failure in XtOpenDisplay...

After some research I found this is deep into the X11 toolkit : https://www.x.org/releases/current/doc/libXt/intrinsics.html#XtOpenDisplay
I will try to play setting DISPLAY properly first which seems the easiest path.
Thanks!
Cheers

Hernan

 

Mariano Martinez Peck

unread,
May 23, 2019, 8:05:05 AM5/23/19
to VA Smalltalk
 
BTW2 neither Manjaro or Arch is "officially" supported. 

Ok, I just converted the .deb to pkg and then modified the vainstall script:

....
if [ "$OS" = "Linux" ] || [ "$OS" = "manjaro" ]; then
                pformAdminToolsInstallString="pacman -U vasmalltalk-9.1x64-admintools-9.1.0-1-x86_64.pkg.tar.gz"
                pformClientInstallString="pacman -U vasmalltalk-9.1x64-client-9.1.0-1-x86_64.pkg.tar.gz"
                pformManagerInstallString="pacman -U vasmalltalk-9.1x64-manager-9.1.0-1-x86_64.pkg.tar.gz"
                pformXtermInstallString="pacman -Sy xterm"
                if [ "x64" = "x86" ] && [ "$osType" = "x86_64" ]; then
                        pformMotifInstallString="pacman -Sy libxm4:i386"
                else
                        pformMotifInstallString="pacman -Sy libxm4"
                fi
elif [ "$OS" = "ubuntu" ] || [ "$OS" = "linuxmint" ]; then
....


Sure, you can workaround it, but it still means its not official. Let me clarify... when we say a platform is officially supported it means we run a hell of testing on it: installer tests, SUnit tests (>15k), and many many other kind of tests. That's how we guarantee things are working as expected. If you use a non official distro, then we cannot guarantee that. Of course, if you are a customer, we will do our best, but our recommendation is to stay in supported platforms. 

 
 
Now I pasted the chunk I remembered to modify the libxm4 which I found is lib32-openmotif on Arch based distros, although I need to check because I did a really fast search.

BTW3 its the first time I see a primitive failure in XtOpenDisplay...

After some research I found this is deep into the X11 toolkit : https://www.x.org/releases/current/doc/libXt/intrinsics.html#XtOpenDisplay
I will try to play setting DISPLAY properly first which seems the easiest path.

Yeah. After checking the error once again, I see that the library is being found but it crashes. So I suspect either different versions/implementations of Xt.

In your ldd output I can see:  libXt.so.6 => /usr/lib/libXt.so.6 (0x00007fbc9419f000)

I checked like below in Linux Mint, Open SuSE and Raspbian. They all answer version "libXt.so.6.0.0"

 mpeck@vm-mint64  /u/l/V/9/bin 
 ❯ ldd esvm40.so | grep libXt                                                                                                                                 [08:53:46]
        libXt.so.6 => /usr/lib/x86_64-linux-gnu/libXt.so.6 (0x00007fe8f97b5000)

 mpeck@vm-mint64  /u/l/V/9/bin 
 ❯ ls -la /usr/lib/x86_64-linux-gnu/libXt.so.6                                                                                                                [08:54:02]
lrwxrwxrwx 1 root root 14 Jul 31  2016 /usr/lib/x86_64-linux-gnu/libXt.so.6 -> libXt.so.6.0.0


Can you check which version are you using? 

Thanks,


Reply all
Reply to author
Forward
0 new messages