<div>Ok, the next step to debug would be setting LD_DEBUG to see what is being loaded.  I link libs is what you want but there is always 'all' if you need more scrolling practice.<br></div><div><br></div><div>I cut off output but you can see that we load the initial libraries, main() gets called and squeak starts to display messages (like -h is an unknown option) and then squeak starts trying to find libraries.<br></div><div><br></div><div>I did not have DISPLAY set so that init fails as one would expect.<br></div><div><br></div><div>Maybe this can help you see why and where your libasound falls over.<br></div><div><br></div><div>cheers<br></div><div><br></div><div>bruce<br></div><div><br></div><div>$ LD_DEBUG=libs ./local/squeak/squeak --h<br></div><div>     12394:       find library=libuuid.so.1 [0]; searching<br></div><div>     12394:         search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libuuid.so.1<br></div><div>     12394:<br></div><div>     12394:        find library=libutil.so.1 [0]; searching<br></div><div>     12394:         search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libutil.so.1<br></div><div>     12394:<br></div><div>     12394:        find library=libpthread.so.0 [0]; searching<br></div><div>     12394:      search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libpthread.so.0<br></div><div>     12394:<br></div><div>     12394:     find library=libm.so.6 [0]; searching<br></div><div>     12394:    search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libm.so.6<br></div><div>     12394:<br></div><div>     12394:   find library=libdl.so.2 [0]; searching<br></div><div>     12394:   search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libdl.so.2<br></div><div>     12394:<br></div><div>     12394:  find library=libc.so.6 [0]; searching<br></div><div>     12394:    search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libc.so.6<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:   calling init: /lib/arm-linux-gnueabihf/libpthread.so.0<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:  calling init: /lib/arm-linux-gnueabihf/libc.so.6<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:        calling init: /lib/arm-linux-gnueabihf/libdl.so.2<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:       calling init: /lib/arm-linux-gnueabihf/libm.so.6<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:        calling init: /lib/arm-linux-gnueabihf/libutil.so.1<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:     calling init: /lib/arm-linux-gnueabihf/libuuid.so.1<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:     calling init: /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:     initialize program: ./local/squeak/squeak<br></div><div>     12394:<br></div><div>     12394:       find library=libv4l2.so.0 [0]; searching<br></div><div>     12394:         search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libv4l2.so.0<br></div><div>     12394:<br></div><div>     12394:        find library=libv4lconvert.so.0 [0]; searching<br></div><div>     12394:   search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libv4lconvert.so.0<br></div><div>     12394:<br></div><div>     12394:  find library=librt.so.1 [0]; searching<br></div><div>     12394:   search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/librt.so.1<br></div><div>     12394:<br></div><div>     12394:  find library=libjpeg.so.62 [0]; searching<br></div><div>     12394:        search cache=/etc/ld.so.cache<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/libjpeg.so.62<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:       calling init: /lib/arm-linux-gnueabihf/libjpeg.so.62<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:    calling init: /lib/arm-linux-gnueabihf/librt.so.1<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:       calling init: /lib/arm-linux-gnueabihf/libv4lconvert.so.0<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:       calling init: /lib/arm-linux-gnueabihf/libv4l2.so.0<br></div><div>     12394:<br></div><div>     12394:<br></div><div>     12394:     transferring control: ./local/squeak/squeak<br></div><div>     12394:<br></div><div>unknown option: --h<br></div><div>Usage: ./local/squeak/squeak [<option>...] [<imageName> [<argument>...]]<br></div><div>       ./local/squeak/squeak [<option>...] -- [<argument>...]<br></div><div>options begin with single -, but -- prefix is silently accepted<br></div><div>     12394:      ./local/squeak/squeak: error: symbol lookup error: undefined symbol: display_X11 (fatal)<br></div><div>     12394:        find library=vm-display-X11 [0]; searching<br></div><div>     12394:       search cache=/etc/ld.so.cache<br></div><div>     12394:   search path=/lib/arm-linux-gnueabihf/tls/v7l/neon/vfp:/lib/arm-linux-gnueabihf/tls/v7l/neon:/lib/arm-linux-gnueabihf/tls/v7l/vfp:/lib/arm-linux-gnueabihf/tls/v7l:/lib/arm-linux-gnueabihf/tls/neon/vfp:/lib/arm-linux-gnueabihf/tls/neon:/lib/arm-linux-gnueabihf/tls/vfp:/lib/arm-linux-gnueabihf/tls:/lib/arm-linux-gnueabihf/v7l/neon/vfp:/lib/arm-linux-gnueabihf/v7l/neon:/lib/arm-linux-gnueabihf/v7l/vfp:/lib/arm-linux-gnueabihf/v7l:/lib/arm-linux-gnueabihf/neon/vfp:/lib/arm-linux-gnueabihf/neon:/lib/arm-linux-gnueabihf/vfp:/lib/arm-linux-gnueabihf:/usr/lib/arm-linux-gnueabihf/tls/v7l/neon/vfp:/usr/lib/arm-linux-gnueabihf/tls/v7l/neon:/usr/lib/arm-linux-gnueabihf/tls/v7l/vfp:/usr/lib/arm-linux-gnueabihf/tls/v7l:/usr/lib/arm-linux-gnueabihf/tls/neon/vfp:/usr/lib/arm-linux-gnueabihf/tls/neon:/usr/lib/arm-linux-gnueabihf/tls/vfp:/usr/lib/arm-linux-gnueabihf/tls:/usr/lib/arm-linux-gnueabihf/v7l/neon/vfp:/usr/lib/arm-linux-gnueabihf/v7l/neon:/usr/lib/arm-linux-gnueabihf/v7l/vfp:/usr/lib/arm-linux-gnueabihf/v7l:/usr/lib/arm-linux-gnueabihf/neon/vfp:/usr/lib/arm-linux-gnueabihf/neon:/usr/lib/arm-linux-gnueabihf/vfp:/usr/lib/arm-linux-gnueabihf:/lib/tls/v7l/neon/vfp:/lib/tls/v7l/neon:/lib/tls/v7l/vfp:/lib/tls/v7l:/lib/tls/neon/vfp:/lib/tls/neon:/lib/tls/vfp:/lib/tls:/lib/v7l/neon/vfp:/lib/v7l/neon:/lib/v7l/vfp:/lib/v7l:/lib/neon/vfp:/lib/neon:/lib/vfp:/lib:/usr/lib/tls/v7l/neon/vfp:/usr/lib/tls/v7l/neon:/usr/lib/tls/v7l/vfp:/usr/lib/tls/v7l:/usr/lib/tls/neon/vfp:/usr/lib/tls/neon:/usr/lib/tls/vfp:/usr/lib/tls:/usr/lib/v7l/neon/vfp:/usr/lib/v7l/neon:/usr/lib/v7l/vfp:/usr/lib/v7l:/usr/lib/neon/vfp:/usr/lib/neon:/usr/lib/vfp:/usr/lib            (system search path)<br></div><div>     12394:      trying file=/lib/arm-linux-gnueabihf/tls/v7l/neon/vfp/vm-display-X11<br></div><div>     12394:       trying file=/lib/arm-linux-gnueabihf/tls/v7l/neon/vm-display-X11<br></div><div>     12394:   trying file=/lib/arm-linux-gnueabihf/tls/v7l/vfp/vm-display-X11<br></div><div>     12394:    trying file=/lib/arm-linux-gnueabihf/tls/v7l/vm-display-X11<br></div><div>     12394:        trying file=/lib/arm-linux-gnueabihf/tls/neon/vfp/vm-display-X11<br></div><div>     12394:   trying file=/lib/arm-linux-gnueabihf/tls/neon/vm-display-X11<br></div><div>     12394:       trying file=/lib/arm-linux-gnueabihf/tls/vfp/vm-display-X11<br></div><div>     12394:        trying file=/lib/arm-linux-gnueabihf/tls/vm-display-X11<br></div><div><br></div><div ><br></div><div class="ik_mail_quote"><div>On 2021-09-28T05:39:24.000+02:00, tim Rowledge <tim@rowledge.org> wrote:</div><blockquote class="ws-ng-quote"><pre style="white-space: normal;"><blockquote class="ws-ng-quote">  On 2021-09-27, at 7:42 PM, David T. Lewis <<a class="defaultMailLink" href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>> wrote:<br> <br> <br> For the Unix VM, Ian designed a system of loadable VM modules. These<br> are analogous to the VM plugins (FilePlugin et al) except that they<br> are loaded directly by the VM executable itself before the image is<br> loaded. These modules are used to provide support for subsystems<br> such as sound and display.<br></blockquote> <br>Exactly - which was one of the reasons I got puzzled by the apparent insistence on loading libasound...<br><br><blockquote class="ws-ng-quote">  <br> Try `./bin/squeak -vm-sound-null -h` instead, see below for explanation<br> of why this might work.<br></blockquote> <br>It's making no difference at all; I've even tried ./bin/squeak -vm-sound-oss -help to see if it makes any difference. It gets a bit weirder though. One the 'old' machine where things work decently<br><br>`./bin/squeak -vm-sound-oss -help<br>Usage: ./bin/squeak [<option>...] [<imageName> [<argument>...]]<br>       ./bin/squeak [<option>...] -- [<argument>...]<br>options begin with single -, but -- prefix is silently accepted<br>vm-sound-NAS tryLoading /srv/squeakbuildfactory/bin/vm-sound-NAS.so: dlopen: libaudio.so.2: cannot open shared object file: No such file or directory<br><br>ALSA <option>s:` etc etc<br><br>On the 'new ' set up <br>` ./bin/squeak -vm-sound-oss -help<br>./bin/squeak: error while loading shared libraries: libasound.so.2: cannot open shared object file: No such file or directory'<br>ie as before.<br><br>It's as if sometihng in whatever config/make environment created this particular VM had some clause explicitly linking to libasound. But even that doesn't provide any reason why one side complains about libasound and then runs anyway, whilst the other complains and dies!<br><br>I guess I'll try a new VM etc tomorrow, see if that makes any difference. Whodathunk simply moving a file could cause so much bother?<br><br>tim<br>--<br>tim Rowledge; <a class="defaultMailLink" href="mailto:tim@rowledge.org">tim@rowledge.org</a>; <a class="defaultMailLink"  href="http://www.rowledge.org/tim" target="_blank">www.rowledge.org/tim</a><br>Strange OpCodes: FLR: Flash Lights Randomly</pre></blockquote></div>