To install the required 32 bits libraries :
# apt-get install libsdl-mixer1.2:i386 libsdl-ttf2.0-0:i386
To install the game, mount your CD & run the installer with linux32
from the util-linux
package :
# mount /dev/cdrom /media/cdrom $ linux32 bash /media/cdrom/setup.sh
Apply the last released patch :
$ linux32 bash smac-6.0a-x86.run
./smac.dynamic
or ./smacx.dynamic
greets you with “Segmentation fault”
This is due to a change in libgcc
that broke some binaries that where compiled with gcc 2.95 in an unusual way (like compiling C++ code with gcc
instead of g++
).
You can use a little shim that add back functions required by a bunch of old games like this one.
LD_PRELOAD="/path/to/lokishim.so" ./smac.dynamic LD_PRELOAD="/path/to/lokishim.so" ./smacx.dynamic
The missing function can be found in a very old libstdc++
, and you can use libstdc++-3-libc6.2-2-2.10.0.so
from https://www.improbability.net/loki/
LD_PRELOAD="./libstdc++-3-libc6.2-2-2.10.0.so" ./smac.dynamic LD_PRELOAD="./libstdc++-3-libc6.2-2-2.10.0.so" ./smacx.dynamic