Hi guys; I decided not to go down the re-compile route yet; instead I tried to work with the current binary.
Using
this suggestion, I ran
strings /usr/lib32/libstdc++.so.6
and got this output:
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
No mention of GLIBCXX_3.4.15.
So I manually downloaded the libstdc++6 package for Oneric Ocelot (Ubuntu 11.10), and replaced the old /usr/lib32/libstdc++.so.6 and libstdc++.so.6.0.14 with
libstdc++.so.6 and libstdc++.so.6.0.16 from the Oneric 11.10 package.
Output of strings /usr/lib32/libstdc++.so.6 |grep GLIBCXX now includes the lines:
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
so promising.
However, when I run the fs2_open_3.6.14_RC1 executable, I get this error:
./fs2_open_3.6.14_RC1: error while loading shared libraries: libstdc++.so.6: wrong ELF class: ELFCLASS64
I think this is because I symlinked my /usr/lib/libstdc++.so.6 to the one in /usr/lib/x86_64-linux-gnu/
So I instead symlinked /usr/lib/libstdc++.so.6 to /usr/lib32/libstdc++.so.6. Output:
mesh-c2q:~/freespace2$ ./run_fs2open_3.6.14RC1.sh
./fs2_open_3.6.14_RC1: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: Permission denied
So tried running it in sudo:
sudo ./run_fs2open_3.6.14RC1.sh
Unrecognized command line parameter "-missile-lighting". Ignoring...
Home directory /home/username not ours.
Home directory /home/username not ours.
Home directory /home/username not ours.
Home directory /home/username not ours.
./run_fs2open_3.6.14RC1.sh: line 4: 12551 Segmentation fault ./fs2_open_3.6.14_RC1 -spec -env -glow -missile-lighting -normal -3dshockwave -dualscanlines -targetinfo -rearm_timer -ship_choice_3d -weapon_choice_3d -3dwarp -snd_preload -fps -res 1680x1050 -mod mediavps_3612
For a brief period, I saw a 1680x1050 window filled with black, as if the game were about to start. But then I get the segmentation fault.
For reference, I've been using a shell script to invoke the game executable:
#!/bin/bash
#cd ~/fs2open
./fs2_open_3.6.14_RC1 -spec -env -glow -missile-lighting -normal -3dshockwave -dualscanlines -targetinfo -rearm_timer -ship_choice_3d -weapon_choice_3d -3dwarp -snd_preload -fps -res 1680x1050 -mod mediavps_3612
Thoughts? If I have an opportunity tomorrow, I shall try to compile the code. Where should I start? Because when I paste
http://svn.icculus.org/fs2open/branches/fs2_open_3_6_14/ into Firefox, I get a whole load of folders, and I don't see any files named "configure" nor "make".
P.S.: sorry for my newbieness; I have patchy experience with using Linux.
Also sorry for the wall of text.