Incase you would like to get FS2_Open to run in linux (x86 architecture) you might find this intresting:
First grab bKtHeG's source tarball from
http://ds.hamburg051.server4free.de/20031206_fs2_open_linux.tar.bz2 and extract the fs2_open directory.
First do the configure script ./configure -disable-networking
And after that execute make.
Incase you get compiler errors in gropengl.cpp, it's most likely because you lack an up to date version of Mesa, the current version is 6.0 and can be downloaded @
www.mesa3d.org.
You can verify this with the command
glxinfo wich will report the version of OpenGL your system supports and wich extensions.
Check to see if the functions mentioned by gcc are present in the glxinfo output (eg glOpenBufferARB).
Unpack the tarball you downloaded, and do make linux-x86.
This will create the new GL libraries wich you need to install on your system.
Depending on the kind of distribution you use, these libraries might be in /lib or in /lib/X11R6/lib, eighter way, you need to replace them with the newly compiled ones, and run ldconfig
Rerun glxinfo to see if the system reports the correct version of Mesa now, if it doesn't, you might have DRI on your system, and you may be required to replace the library in /usr/X11R6/lib/tls aswell (make sure to run ldconfig afterwards).
Incase you get errors while compiling in ds.cpp, it is probably because you lack the latest CVS version of openAL.
In order to get the latest version, you should first make sure you have CVS installed.
Do the following in a shell(make sure you are online):
cvs -d:pserver:
[email protected]:/usr/local/cvs-repository login
This will connect to the repository, if you are asked for a password, use "guest"
Now do the following:
cvs -d:pserver:
[email protected]:/usr/local/cvs-repository co openal
This will download the repository into your current directory, so make sure you are in a temporary directory first!
Change to the directory, and read the docs for openAL.
Basicly, you'll have to do the following from within the openal directory:
cd linux
./configure --prefix=/usr/local
make
make install
Make sure you replace the old libraries in /usr/lib and that you eighter copy or link the new ones to /usr/lib
Now go back to the fs2_open directory, and run make again.
Make should now finish the compilation, and create the file fs2 (located in code/), copy this file to your freespace 2 directory.
If it doesn't, and complains about not finding -lGL, don't panic, this means you don't have a symbolic link in /usr/lib towards the correct file.
Create the symlink called libGL.so and make it point to /usr/X11R6/lib/libGL.so
Again start make from within the fs2_open directory.
In that same directory, create a textfile called fs2_open.ini and make sure it contains the following:
[Default]
Fullscreen=0
VideocardFs2open=OpenGL - Primary Display Driver(1024 x 768)
Videocard=OpenGL - Primary Display Driver(1024 x 768)
VideoApi=OpenGL
That's all, you should now be able to start fs2 with ./fs2
Extra notes, if you installed FreeSpace 2 using eg iculus's installer and get an error "error parsing strings.tbl" or "error parsing rank.tbl", try copying over your working freespace install from your windows partition, and see if that helps.
Don't have windows installed? No biggy, install the latest wine, and you can use the installer from the FreeSpace CD's.
Incase you got an error while compiling like, eg "brace-enclosed initializer used to initialize x", it is most likely because of a whacked GCC install, check that you have binaries that match each other (don't mix files from eg 2.9.2 with 3.x), and if that doesn't help, try removing & reïnstalling GCC.
With many thanks to bKtHeG, Taylor and all the others for making this available.