[Linux] Common Problems and Solutions

Mac Thread | Linux Thread

There have been to understanding, and my lurking skills, that many of you running Linux are having problems running the game.

In this thread I’ll try to compile a list of all the common problems people are hearing about, and the probable solutions to each one.

Disclaimer: Do these solutions at your own risk, I cannot possibly comprehend all the different setups that exist, and that most people’s computers looks and runs different.

This will be a topic about Ubuntu, the most common version I have seen people run on this forum. But the solutions in here will most probably work on other distros, as long as you take into account that the packages you install (such as ia32-libs) may be named differently.


As of this writing, you need support for x32 libs to run the game.
So if you are on an x64 system (found by opening a terminal and typing

$uname -a

Linux openburk 3.5.0-22-generic #34-Ubuntu SMP Tue Jan 8 21:47:00 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

x86_64 means that its a x64 bit system, otherwise it would say x86, or x86_32.

So you should install the 32bit libs if you’re on an x64 system:

$sudo apt-get install ia32-libs

Note: when installing the libraries below on a 64bit system you need to tell apt-get to install the 32-bit variant. By adding “:i386” at the end.
So:

$ sudo apt-get install libnss3:i386

$ sudo apt-get install libgconf2-4:i386


Error starting the game libnss3.so

gamedevtycoon: error while loading shared libraries: libnss3.so: cannot open shared object file: No such file or directory

You should probably install libnss:

$sudo apt-get install libnss3


Error starting the game libgconf-2.so.4

gamedevtycoon: error while loading shared libraries: libgconf-2.so.4: cannot open shared object file: No such file or directory

Install libgconf-2

$sudo apt-get install libgconf2-4

There might be alot of dependencies coming with this, so make sure you really want to do this.


Error while starting the game libudev.so.0

gamedevtycoon: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory

You should be able to just make a symlink from the original file to the file requsted by the game:

$sudo ln -s /usr/lib32/libudev.so.1.3.3 /usr/lib32/libudev.so.0

If it complains that the file doesnt exist, check the files in /usr/lib/ for any file named libudev.so.?, and find the one your system needs/wants.


Error while loading when going from your garage to a larger office:

If you get this in your terminal during the loading:

20720:0429/114608:ERROR:browser_main_loop.cc(159)] GTK theme error: Unable to locate theme engine in module_path: “murrine”,

Follow @Pieter’s solution:
For a temporary workaround:
When the game starts the contents are unpacked.
Start the game Ctrl-Alt-F1 to go to the console.
login

ps ax | grep gamedev | grep working-directory

see where the working directory is

cd working directory

mv images/superb/level2Desk.png images/superb/level2desk.png

Ctrl-Alt-F7 to return to the game

Since the content is unpacked when the game is started this has to be done while the game is running. As soon as you exit the game the temporary files are deleted.

This one apparently works on Mac aswell.


Problem with no sound on the .deb Installer

I havent tested this one myself yet, but apparently downloading the packaged .tar.gz file with the game and running it from that instead of the .deb package supposedly works for some people. If for soem reason you want to use the .deb package, you can try @evilny0’s solution:

"Running Mint 14, 64 bits, kernel 3.7.0-7-generic here.

I didn’t have any sound either with the DEB package. I have sound with the tar.gz installation though. This has to do with libffmpegsumo.so, which is installed in /lib by the package. It seems that the executable is looking for it in the same folder the executable is placed.

Creating a symlink to /lib/libffmpegsumo.so in /usr/bin allows to have sound… ugly but hey, it works. I suggest using the tar.gz until the issue is fixed in the package though."

$sudo ln -s /lib/libffmpegsumo.so /usr/bin


Error installing the game libasound_module_pcm_pulse.so

[12055:0430/205849:WARNING:alsa_util.cc(24)] PcmOpen: plug:default,No such device or address ALSA lib dlmisc.c:236:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/alsa-lib/libasound_module_pcm_pulse.so

This can be remedied by installing libasound2:

$sudo apt-get install libasound2


I hope this will help some people, please post below with newer problems or if you have a better/new solution to a problem and I will update the thread.

This topic is now pinned. It will appear at the top of its category until it is either unpinned by a moderator, or the Clear Pin button is pressed.

Nice summary.
I would just like to add that when installing those libraries on a 64bit system you need to tell apt-get to install the 32-bit variant.
So:

$ sudo apt-get install libnss3:i386
$ sudo apt-get install libgconf2-4:i386

@pieter Ah, thanks!

I’ll add that.

We’ve published updated packages:

http://forum.greenheartgames.com/t/linux-v1-3-8-updated-packages/2681

Hope they will solve most issues.

Oh thanks Patrick!

I’ll try it out first thing when i get home today, and see if there are any problems still.

I managed to get the game started, but after accepting the EULA I get this error (and the game closes)

[8445:0511/195203:ERROR:zygote_host_impl_linux.cc(146)] Running without the SUID sandbox! See https://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more information on developing with the sandbox on.

[8445:0511/195203:INFO:gpu_info_collector_linux.cc(78)] NVCtrl extension does not exist.

[8463:0511/195204:ERROR:renderer_main.cc(203)] Running without renderer sandbox

[8463:0511/195214:ERROR:audio_output_device.cc(247)] IO loop going away before the audio device has been stopped
[8463:0511/195214:ERROR:audio_output_device.cc(247)] IO loop going away before the audio device has been stopped

I’m trying to get the game running on my CentOS 6.4 install, and it’s just failing at every turn.

Installing the 64 bit version of the game and running it produces a gtk_widget error, and installing the 32 bit version using the package manager (that was supposed to have downloaded all the dependent packages) gets me to “libudev.so.0: wrong ELF class: ELFCLASS64”, presumably because I’m running a 64 bit system.

I was really disappointed when I paid for this game and then couldn’t play it.

@gnor did we test on CentOS ? do you have any suggestions on how to resolve this?

No. node-webkit doesn’t support CentOS since it doesn’t provide the required version of Gtk.

2 Likes

@gnor I see. do we have a list of linux distros that work/don’t work?

Hello,
I bought the game today. It would not run on my CentOS 6.4 system so I started digging around to find a solution to the node-webkit depenancy problem:)

It turned out that it is sufficient to have the gtk2 libraries version 2.20 in a path known to the game starting script which is the game folder or “lib” inside the game folder. Higher versions than 2.20 do not work ( tested it with 2.22).Here is a quick tutorial. I use the Fedora Core 13 version because the environment is quite similar.

1- Become root

su -

2- Create a temporary directory

mkdir /tmp/temp
cd /tmp/temp

3- Download the gtk2 package

 For 32bit : 

curl -O http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/13/Fedora/i386/os/Packages/gtk2-2.20.1-1.fc13.i686.rpm

 Forn 64bit : 

curl -O http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/13/Fedora/x86_64/os/Packages/gtk2-2.20.1-1.fc13.x86_64.rpm

4- Extract the libraries

 For 32bit : 

rpm2cpio gtk2-2.20.1-1.fc13.i686.rpm |cpio -imdv lib/lib

 For 64bit :

rpm2cpio gtk2-2.20.1-1.fc13.x86_64.rpm |cpio -imdv lib64/lib

5- Move the extracted libraries

For 32bit :

mv /tmp/temp/usr/lib /opt/greenheartgames/lib

For 64bit : 

mv /tmp/temp/usr/lib64 /opt/greenheartgames/lib

6- Play the game :slight_smile:

(you can delete the temporary dir - rm -r /tmp/temp )

Cheers :slight_smile: