Difference between revisions of "Fs2 open on Linux/Pre-Compile Configuration"

From FreeSpace Wiki
Jump to: navigation, search
m (Reflect source code hosting via Git)
Line 6: Line 6:
 
<p></p>
 
<p></p>
 
{{Note| This step is only for those who want the bleeding-edge source code to compile on their own. You can skip this if you intend to use a provided binary executable.}}
 
{{Note| This step is only for those who want the bleeding-edge source code to compile on their own. You can skip this if you intend to use a provided binary executable.}}
Before you compile you need to configure it for your system. In the directory you ran the SVN command from, a new directory has appear, namely fs2_open.
+
Before you compile you need to configure it for your system. In the directory you ran the Git command from, a new directory has appear, namely fs2_open.
 
If your fs2_open is a completely new checkout, you will first need to run the autogen.sh script.
 
If your fs2_open is a completely new checkout, you will first need to run the autogen.sh script.
 
Run from inside your newly created fs2_open directory:
 
Run from inside your newly created fs2_open directory:

Revision as of 04:05, 3 May 2015

« Acquiring the Code The fs2_open on Linux Guide
Pre-Compile Configuration
Optimization »

Note: This step is only for those who want the bleeding-edge source code to compile on their own. You can skip this if you intend to use a provided binary executable.

Before you compile you need to configure it for your system. In the directory you ran the Git command from, a new directory has appear, namely fs2_open. If your fs2_open is a completely new checkout, you will first need to run the autogen.sh script. Run from inside your newly created fs2_open directory:

$ ./autogen.sh

autogen.sh is a script that will generate the required makefiles. You will see alot of "checking for this" and "checking for that", this is actually the "configure" script (which can be run with ./configure if you need to change the options) examining and configuring fs2_open for your system.
It is possible to give autogen.sh configure options as well, autogen.sh will pass them along to configure.

A full list of configure options can be found by running the configure script with the '--help' option.

$ ./configure --help

Note: if you have multiple versions of a dependency installed, and FSO is picking the wrong one, AND it's causing a compile issue, you should be able to select the correct version of the library with something like this: (specific example is given for lua5.1 (good) vs lua5.2 (causes problems) - thanks to ZekeS for this advice

$ LDFLAGS="-l:liblua.so.5.1 $LDFLAGS" CXXFLAGS="-I/usr/include/lua5.1 $CXXFLAGS" ./autogen.sh

If you end up doing this, let a member of the SCP know about it so that configure.ac can be updated to exclude the incompatible version of the library.