Downloading and Compiling under Linux: Difference between revisions
(DevIL is no more a dependency) |
(Forgot some mentions of DevIL...) |
||
Line 30: | Line 30: | ||
* <code>Qt 4</code>: QtCore, QtGui and QtNetwork libraries (http://qt.nokia.com/) | * <code>Qt 4</code>: QtCore, QtGui and QtNetwork libraries (http://qt.nokia.com/) | ||
* <code>GDB</code> (http://www.gnu.org/software/gdb/) | * <code>GDB</code> (http://www.gnu.org/software/gdb/) | ||
==== Example for <code>apt</code>-Based Systems ==== | ==== Example for <code>apt</code>-Based Systems ==== | ||
On an <code>apt</code>-based system such as Debian or Ubuntu, use: | On an <code>apt</code>-based system such as Debian or Ubuntu, use: | ||
<code>sudo apt-get install git build-essential cmake zlib1g-dev libfreetype6 | <code>sudo apt-get install git build-essential cmake zlib1g-dev libfreetype6-dev libopenal1 libopenal-dev mesa-common-dev libgl1-mesa-dev libboost-all-dev libsdl1.2-dev libglew-dev qt-sdk gdb</code> | ||
Your package manager will probably prompt you to install other packages, so just say yes to those. qt-sdk is not needed for the game to run, but without it the crash reporter will be disabled, making it harder to report errors in case of a crash. gdb is used to generate detailed crash information and is not needed at compile-time. | Your package manager will probably prompt you to install other packages, so just say yes to those. qt-sdk is not needed for the game to run, but without it the crash reporter will be disabled, making it harder to report errors in case of a crash. gdb is used to generate detailed crash information and is not needed at compile-time. |
Revision as of 02:39, 9 August 2012
ℹ️ This page describes compiling Arx Libertatis from source under Linux and assumes some familiarity with the command-line. If you just want to play the game, it might be easier to grab a binary release or snapshot if available.
ℹ️ Please see Installing the game data under Linux regarding where and how to install the game data.
Alternatively, configure Steam to use Arx Libertatis to play Arx Fatalis.
This page documents how to compile Arx Libertatis from https://github.com/arx/ArxLibertatis under Linux or FreeBSD.
Specific instructions are given for a cleanly installed Ubuntu 10.10 AMD64 system, but the procedure should be similar for other Linux distributions or FreeBSD. Please update this page if something is missing.
There is also a nice, but possibly outdated video how-to on linuxgamecast.com.
Manual installation
Setting Up the Build Environment
To download and compile Arx Libertatis you will need the following tools:
git
cmake
(version 2.8 or later)- a
gcc
orclang
toolchain
Your system must have the following dependencies installed, including headers / development versions:
SDL
1.2 (http://www.libsdl.org/)OpenGL
1.5 or newer (http://www.opengl.org/)GLEW
(http://glew.sourceforge.net/)OpenAL
(OpenAL Soft is recommended: http://kcat.strangesoft.net/openal.html)zlib
(http://zlib.net/)Boost
headers and program_options library (http://www.boost.org/)Freetype
(http://www.freetype.org/)
The optional crash reporter application also needs:
Qt 4
: QtCore, QtGui and QtNetwork libraries (http://qt.nokia.com/)GDB
(http://www.gnu.org/software/gdb/)
Example for apt
-Based Systems
On an apt
-based system such as Debian or Ubuntu, use:
sudo apt-get install git build-essential cmake zlib1g-dev libfreetype6-dev libopenal1 libopenal-dev mesa-common-dev libgl1-mesa-dev libboost-all-dev libsdl1.2-dev libglew-dev qt-sdk gdb
Your package manager will probably prompt you to install other packages, so just say yes to those. qt-sdk is not needed for the game to run, but without it the crash reporter will be disabled, making it harder to report errors in case of a crash. gdb is used to generate detailed crash information and is not needed at compile-time.
Cloning the code repository
First, go to where you want the ArxLibertatis directory to be located.
cd ~/Code
You are now ready to clone the repository, type:
git clone git://github.com/arx/ArxLibertatis.git
This creates a directory called ArxLibertatis and downloads the current source code from github.
cd ArxLibertatis
Alternatively you can download a stable source code release and extract that:
- Arx Libertatis Source Codearx-libertatis-1.2.tar.xz2.4 MiB
MD5:8e05754b75af0ed7fbf709d30b28df3c
signature
Compiling
Now you should be ready to configure and compile. Run cmake:
cmake .
And now you should be able to compile with
make -j`getconf _NPROCESSORS_ONLN`
Alternatively, you can tell cmake to generate a unity build file, which might result in faster build times and better optimization depending on your machine configuration but will need more RAM to compile. Run cmake like this:
cmake . -DUNITY_BUILD=1
And make without the -j flag, since in effect there is only one file to build, named ub_arx.cpp
Running the executable
For a manual installation, run arx by specifying a relative path to the arx
executable:
./arx
If you installed arx through the package manager of your distro, just run arx
in the directory containing the data files.
You will need to obtain a copy of the data files from a commercial copy of Arx, or use the demo data files, put these in your bin directory and you are ready to go!
The game will automatically change all used files to lower-case on the first start. If you want to run the game with read-only data you need to do this manually.
For running arx in a debugger, see Debugging