Author Topic: How to run 32 bit simutrans on a 64 bit Ubuntu/Debian/... Linux  (Read 3981 times)

0 Members and 1 Guest are viewing this topic.

Offline Isaac.Eiland-Hall

  • Benevolent Dictator
  • Administrator
  • *
  • Posts: 3345
  • Total likes: 228
  • Helpful: 90
    • Facebook Profile
  • Languages: EN
This is my first 64bit system, and I'm not a Linux guru. Yet. :)

Downloaded nightly and a pak. Running simutrans from terminal:

./simutrans: error while loading shared libraries: cannot open shared object file: No such file or directory

I do have libbz2-1.0 installed.

Some googling indicates that this can happen when trying to run a 32bit binary in 64bit Ubuntu.

I notice I can download a 64bit engine from; but no such option on the nightly site. Does that match what is known? So I can't run nightlies? Or anyone have any ideas? :)
« Last Edit: May 06, 2015, 08:22:53 AM by prissi »

Offline isidoro

Hi, and welcome on board!

You can run 32-bit applications and 64-bit applications in a 64-bit system, but 32-bit applications won't work in a 64-bit linux out of the box, generally.

So, first locate the simutrans executable file and find out whether it is a 32-bit or 64-bit application.  You can know that running "file <name_of_the_file_you_want_to_know_about>".   If it is 64, it will say: "ELF 64-bit...".

If it is 32, you have to:
  • Find out if you have the 32bit support installed: dpkg --print-foreign-architectures  (it says i386 if it is)
  • If not, install it: sudo dpkg --add-architecture i386
  • Install the 32-bit libraries you need.  Some of them (the main ones) will be installed if you: sudo apt-get install g++-multilib
  • Even if you have the corresponding version of a library in 64-bit, you need the 32-bit version.  For instance, sudo apt-get install libbz2-1.0:i386
You can see the version of a library that is installed by: dpkg -l libbz2-1.0
In my case, I have the 64-bit version:
ii  libbz2-1.0:amd64 1.0.6-7       amd64         high-quality block-sorting file compre, since it says amd64.

In my case, if I want to run the 32-bit executable of ST, I would have to install the 32-bit version of the library to match the executable.

Hope it helps.

Offline zyphlar

Re: How to run 32 bit simutrans on a 64 bit Ubuntu/Debian/... Linux
« Reply #2 on: May 30, 2016, 03:57:47 AM »
This is the command I ran in Ubuntu 14.04 x64 to get things working:

Code: [Select]
sudo apt-get install libbz2-1.0:i386 libsdl1.2debian:i386