Remember to check out the work-in-progress FAQs: Trine 2 FAQ, Humble Frozenbyte Bundle FAQ. You can also contact us by email.

Trouble installing shadowgroundsUpdate1.run

Technical support for the Linux & Mac platforms (for Shadowgrounds and Shadowgrounds Survivor).

Trouble installing shadowgroundsUpdate1.run

Postby Nepenthes » Fri Sep 30, 2011 11:57 pm (link to this post)

Hi,
I just tried installing shadowgroundsUpdate1.run from the new Indie Bundle on my Ubuntu Oneiric Ocelot (11.10) beta 2 (don't say it's not stable yet, it's a major change confirmed and massively landing two weeks from now).
As you may know, ia32-libs are progressively dropped, being replaced by the multiarch repositories.

The installer fails with this output :

Code: Select all
./shadowgroundsUpdate1.run: error while loading shared libraries: libglade-2.0.so.0: wrong ELF class: ELFCLASS64


ia32-libs is installed on my system. libglade2-0:i386 is not installable as long as it tries to remove libglade2-0 (native amd64 version), on which many other pieces of software depend...

How can I install this game without breaking Oneiric ? Beter solve this now than when Ubuntu 11.10 final is out (and many more user impacted).
Nepenthes
 
Posts: 13
Joined: Fri Sep 30, 2011 11:41 pm

Postby fb_joel » Sat Oct 01, 2011 10:04 pm (link to this post)

Sounds quite serious. We'll have to look into this, obviously if the new Ubuntu breaks the installer completely then that'd be good to get fixed earlier...

Can't promise any ETA right now though, but hopefully won't take too long (e.g. before Oneiric release).
// Joel, Frozenbyte team
User avatar
fb_joel
Site Admin
 
Posts: 2478
Joined: Fri Feb 18, 2005 2:14 pm
Location: Finland

Postby MTF » Sun Oct 02, 2011 10:51 pm (link to this post)

Same here!

./shadowgroundsUpdate1.run: error while loading shared libraries: libglade-2.0.so.0: wrong ELF class: ELFCLASS64
MTF
 
Posts: 1
Joined: Sun Oct 02, 2011 10:50 pm

Postby Nepenthes » Wed Oct 05, 2011 4:13 pm (link to this post)

Any progress ?

It seems that libglade has no multiarch support, it's mainly a shared library packaging issue, but we are too late in debian and ubuntu developpement cycle to ask for a fix. Is there any alternative to request request repackaging this library to get this installer (and game) to run in Oneiric ?
Nepenthes
 
Posts: 13
Joined: Fri Sep 30, 2011 11:41 pm

Postby vivnet » Fri Oct 07, 2011 11:45 am (link to this post)

I came across this a couple days ago after I purchased the Humble Frozen Synapse Bundle.

I too shared this same issue, though I've devised a simple workaround that allows the installer to function correctly without needing to install any packages. Here's what to do.

1. Use http://packages.ubuntu.com/ to locate and download the i386 binary package for libglade2-0

2. EXTRACT (not install) the debian package to your desktop

3. Fire up a terminal, we're going to use LD_PRELOAD to inject the needed library of the correct ELF Class

'LD_PRELOAD=<full path to libglade-2.0.so.0> ./survivorUpdate1.run'

This should allow the installer to launch. You'll likely get a ton of errors like I did, but you can complete the installation without further issue.

I'm assuming the same method should work for regular Shadowgrounds and I'm still trying to debug the Sig 11 caused when executing claw-bin for Jack Claw. I'll post some more info if I run into and/or solve further issues.

Thanks for supporting Linux!
vivnet
 
Posts: 4
Joined: Fri Oct 07, 2011 11:37 am

Postby vivnet » Fri Oct 07, 2011 12:23 pm (link to this post)

So, while this method works for the installer, it's a little more tricky to actually run the game and I've had no success.

To actually launch the game, you'll need to use LD_PRELOAD to inject several libraries. Listed as follows:

appmenu-gtk
libdbusmenu-glib4
libdbusmenu-gtk4
libglade2-0
libxml2

After preloading these libraries, you'll find that the game catches Sig 11, "Got signal 11 at 0x1 from 0xf7703b97."

Furthermore, using gdb to debug the issue is hardly useful unless the development team could provide the necessary debugging symbols. Output of gdb is as follows:

"(gdb) file /home/vivid/Desktop/clawBeta3/claw-bin
Reading symbols from /home/vivid/Desktop/clawBeta3/claw-bin...(no debugging symbols found)...done.
(gdb) run
Starting program: /home/vivid/Desktop/clawBeta3/claw-bin
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
0xf7ff4b97 in ?? () from /lib/ld-linux.so.2"

This behavior is mostly the same on Jack Claw, Shadowgrounds, and Shadowgrounds Survivor (as expected, they appear to share the same code base).

I'm still working on this, but I'm thinking its the same general issue. As you can see by the path (/lib/ld-linux.so.2), the game makes no attempt to load the i386 ld-linux.so.2 from /lib32/ld-linux.so.2.

Also, preloading ld-linux.so.2 from /lib32/ld-linux.so.2 is successful, but produces the output of "Segmentation fault (core dumped)."

This is as far as I am able to debug the issue in the current state of the binary.
vivnet
 
Posts: 4
Joined: Fri Oct 07, 2011 11:37 am

Postby vivnet » Fri Oct 07, 2011 2:11 pm (link to this post)

Sorry for so many replies, but after reading several of the posts on these forums I've managed to track down the Segmentation Fault to the bundled libasound.so.2 library.

Simply remove it from <gamedir>/lib32 and you should find success in launching the game. It appears to be a version mismatch between the provided 32bit library and the system's 64bit library.

Also, placing the previously mentioned LD_PRELOAD libraries within <gamedir>/lib32 allows me to run the game without any special command arguments.

This method works for both Shadowgrounds and Shadowgrounds Survivor.

Jack Claw requires no additional libraries, just remove libasound.so.2 from clawBeta3/lib32 and you're good to go!
vivnet
 
Posts: 4
Joined: Fri Oct 07, 2011 11:37 am

Postby fb_joel » Fri Oct 07, 2011 10:12 pm (link to this post)

This goes way above my head but I'm glad there's a solution for this. Thanks a lot vivnet for posting this!

(No official progress yet.)
// Joel, Frozenbyte team
User avatar
fb_joel
Site Admin
 
Posts: 2478
Joined: Fri Feb 18, 2005 2:14 pm
Location: Finland

Postby Nepenthes » Sat Oct 08, 2011 12:29 am (link to this post)

I have not tested this solution yet, but using LD_PRELOAD (and manually downloaded i386 libs) every time you launch the game can only be considered as a temporary hack, and not the right way to fix this...

I think that many linux users do not have the technical level to do this by themselves, or frozenbyte will have to provite a custom install scrip/launcher to get this a little more automated.
Nepenthes
 
Posts: 13
Joined: Fri Sep 30, 2011 11:41 pm

Postby vivnet » Sat Oct 08, 2011 3:05 am (link to this post)

You'll only need to use LD_PRELOAD for the installer and only for libglade. Once you've got it installed, you can place the other libraries in the <gamedir>/lib32 directory like I said and the game will run as if you have the libraries....because you do.

If you don't want to use the launcher, you can simply remove libasound from <gamedir>/lib32 and execute the game directly without additional libraries, but you'll have to manually configure your video settings from the config files.

It's not a hack or a fix. It's a workaround and indeed the development team should probably find a way to improve this. Many Linux people may not be able to do this, its certainly not the desired behavior, but I gave detailed enough instructions that I'm sure anyone who really wants to play these games on this specific system (maybe others) that can read should be able to get it working in a few minutes.

My suggestion, obviously the dev team already knows about it, but try creating a bug against ia32-libs on Launchpad asking for libglade to be included. That way there's two dev teams aware of such issues which increases the chances of a more simplified workaround.

Edit: In my opinion, this is purely a distribution related issue. The only resolution I can think of would be to remove the bundled libasound and bundle libglade (and others), but this could cause other issues to appear.
vivnet
 
Posts: 4
Joined: Fri Oct 07, 2011 11:37 am

Postby Nepenthes » Sat Oct 08, 2011 4:57 pm (link to this post)

I followed your instructions, the game runs fine. thank you.

Frozenbyte should file a bug against these packages, to get these libraries multiarched.
Nepenthes
 
Posts: 13
Joined: Fri Sep 30, 2011 11:41 pm

Postby emblemparade » Fri Oct 14, 2011 9:12 am (link to this post)

Glad I found this post!

Let me make things a bit easier for folk:

1. Download the 32bit Glade library from http://packages.ubuntu.com/oneiric/i386/libglade2-0/download
2. Open it with archive manager, extract the file usr/lib/libglade-2.0.so.0.0.7
3. Put it in Shadowgrounds' lib32 folder.
4. Rename it to libglade-2.0.so.0

(You do not need to use LD_PRELOAD, because Shadowgrounds automatically tries to find its libraries under lib32 first)
emblemparade
 
Posts: 1
Joined: Fri Oct 14, 2011 9:07 am

Postby tinzin » Mon Oct 24, 2011 10:21 pm (link to this post)

emblemparade wrote:Glad I found this post!

Let me make things a bit easier for folk:

1. Download the 32bit Glade library from http://packages.ubuntu.com/oneiric/i386/libglade2-0/download
2. Open it with archive manager, extract the file usr/lib/libglade-2.0.so.0.0.7
3. Put it in Shadowgrounds' lib32 folder.
4. Rename it to libglade-2.0.so.0

(You do not need to use LD_PRELOAD, because Shadowgrounds automatically tries to find its libraries under lib32 first)

But how did you install the game first?

The LD_PRELOAD method did not work for me. Instead, my survivorUpdate1.run file became a 0 byte file when doing the LD_PRELOAD command.

I am having trouble with Frozen Synapse too, I could install the game, but I am unable to run it. It gives me:
$ ./FrozenSynapse
Alert: Error Unable to initialize OpenGL. (Error: Failed loading libGL.so.1)
Exiting

Although, I can run Frozen Synapse using the optirun command from bumblebee (running through the nvidia card). This doesn't work with Survivor.
My system is: Ubuntu 11.10
Linux 3.0.0-12-generic #20-Ubuntu SMP Fri Oct 7 14:56:25 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
tinzin
 
Posts: 1
Joined: Mon Oct 24, 2011 7:52 pm

Postby Nepenthes » Tue Nov 01, 2011 2:56 am (link to this post)

Try to run it with optirun32 !
Nepenthes
 
Posts: 13
Joined: Fri Sep 30, 2011 11:41 pm

Postby Fatfool » Sun Dec 04, 2011 5:59 pm (link to this post)

emblemparade wrote:Glad I found this post!

Let me make things a bit easier for folk:

1. Download the 32bit Glade library from http://packages.ubuntu.com/oneiric/i386/libglade2-0/download
2. Open it with archive manager, extract the file usr/lib/libglade-2.0.so.0.0.7
3. Put it in Shadowgrounds' lib32 folder.
4. Rename it to libglade-2.0.so.0

(You do not need to use LD_PRELOAD, because Shadowgrounds automatically tries to find its libraries under lib32 first)


Hi guys, well, this is the posted solution on the FAQ page
http://frozenbyte.com/help_humble/linuxfaq.html

But how do you get it installed in the first place again?
Fatfool
 
Posts: 1
Joined: Sun Dec 04, 2011 5:58 pm

Postby alt_turo » Mon Dec 05, 2011 4:56 pm (link to this post)

Fatfool wrote:But how do you get it installed in the first place again?

Either use manual install (unzip the file where you want it) or put libglade-2.0.so.0 in the same directory as the installer. You might need to start the installer with "LD_LIBRARY_PATH=. ./shadowgroundsUpdate1.run"

If you are missing other libraries use "ldd shadowgroundsUpdate1.run"
Turo Lamminen
Alternative Games
alt_turo
 
Posts: 195
Joined: Mon Dec 13, 2010 11:06 am

Postby Nepenthes » Tue Dec 06, 2011 3:34 pm (link to this post)

Still no official fix ?
We would only need a 64 bit installer (to avoid the preload thing at install time), with the right 32 bit libs (to avoid modifying the lib32 folder content) in the right place.
I hope you will find some time to do so !
Nepenthes
 
Posts: 13
Joined: Fri Sep 30, 2011 11:41 pm

Postby Kayorok » Sun Jan 22, 2012 7:28 pm (link to this post)

Hi, I did everything stated in this forum and the launcher works! but after i click "launch" nothing happens and the game doesn't open... anyone know a fix for that?

EDIT: got a fix! all i had to do is remove libasound.so.2 file and worked fine afterwards :D

Kayorok
Kayorok
 
Posts: 1
Joined: Sun Jan 22, 2012 7:26 pm

Postby rewind » Sun Oct 07, 2012 2:15 pm (link to this post)

Okay guys, managed to get the installer working in Linux mint 13 64bit with the following:
- Extracted libglade-2.0.so.0.0.7 from libglade2-0_2.6.4-1build1_i386.deb and renamed it to libglade-2.0.so.0 as suggested above
- started the installer with
Code: Select all
LD_LIBRARY_PATH=. ./shadowgroundsUpdate1.run
and everything went well, the game was installed successfully
Then I tried to run it and got:
Code: Select all
/usr/local/games/shadowgrounds/shadowgrounds-launcher
/usr/local/games/shadowgrounds/shadowgrounds-launcher: error while loading shared libraries: libglade-2.0.so.0: cannot open shared object file: No such file or directory

The trick with LD_LIBRARY_PATH doesn't work:
Code: Select all
LD_LIBRARY_PATH=. /usr/local/games/shadowgrounds/shadowgrounds-launcher
/usr/local/games/shadowgrounds/shadowgrounds-launcher: /usr/local/games/shadowgrounds/lib32/libxml2.so.2: no version information available (required by ./libglade-2.0.so.0)
/usr/local/games/shadowgrounds/shadowgrounds-launcher: symbol lookup error: /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0: undefined symbol: _XGetRequest


To run the game:
-renamed the whole /usr/logal/games/shadowgrounds/lib32(to something) and created a new empty lib32 folder and copied in it only the following:
libavcodec.so.51
libavformat.so.52
libavutil.so.49
libboost_thread-mt.so.1.35.0
libboost_filesystem.so.1.35.0
libboost_regex.so.1.35.0
libboost_system.so.1.35.0
libglade-2.0.so.0
libGLEW.so.1.5
libicudata.so.38
libicui18n.so.38
libicuuc.so.38
libPhysXLoader.so.1
libPhysXCore.so
libSDL_sound-1.0.so.1
libsmpeg-0.4.so.0

Everything was copied from the original lib32 folder except the libglade-2.0.so.0, which was extracted (and renamed) from the aforementioned libglade2-0_2.6.4-1build1_i386.deb.

Hope that helps someone.

P.S. The version I have is from Humble Frozenbyte Bundle shadowgroundsUpdate1.run
rewind
 
Posts: 2
Joined: Wed Apr 20, 2011 9:51 pm

Postby MyR » Wed Feb 06, 2013 10:59 pm (link to this post)

rewind: thank you!

working now on linux mint 14 64-bit.
MyR
 
Posts: 1
Joined: Wed Feb 06, 2013 10:57 pm

Postby pbcartwright » Fri Jan 10, 2014 10:06 pm (link to this post)

I am using Debian Wheezy 64 bit. I just downloaded this game and got the same error:
./shadow*.run
./shadowgroundsUpdate1.run: error while loading shared libraries: libglade-2.0.so.0: wrong ELF class: ELFCLASS64

is there a fix for this?? something simple?? I don't want to have to install more programs, or screw up my installation..
pbcartwright
 
Posts: 2
Joined: Fri Jan 10, 2014 10:03 pm


Return to Technical support for Linux & Mac

Who is online

Users browsing this forum: No registered users and 2 guests