Downloading and Compiling under Linux

From Arx Libertatis Wiki
Revision as of 01:51, 5 May 2011 by BobJelly (talk | contribs) (Created page with "I have listed below the procedure to go from a cleanly installed Ubuntu 10.10 AMD64 system, to being able to compile and run the version of Arx Fatalis available from https://git...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

I have listed below the procedure to go from a cleanly installed Ubuntu 10.10 AMD64 system, to being able to compile and run the version of Arx Fatalis available from https://github.com/lubosz/ArxFatalis.git

Your mileage may vary with other distros, but you should be able to figure out the packages you need from your particular package manager.

Setting Up the Build Enviroment

Your system must have the following dependencies installed:

  • git
  • cmake (version 2.8 or later)
  • a gcc toolchain (with multilib support if you are using a 64-bit system)
  • wine with development headers
  • zlib development libraries
  • DevIL (http://openil.sourceforge.net/)
  • Freetype (http://www.freetype.org/)
  • On a 64-bit system, 32-bit development libraries

Your distribution's default repository might not have the DevIL package, so you may need to use a custom repository or build DevIL manually. See the project's Web site for details about obtaining it.

Example for apt-Based Systems

On an apt-based system such as Debian or Ubuntu, use:

sudo apt-get install git cmake g++ g++-multilib wine wine-dev zlib1g-dev lib32z1-dev libfreetype6-dev libdevil1c2 libdevil-dev

Or, as root:

apt-get install git cmake g++ g++-multilib wine wine-dev zlib1g-dev lib32z1-dev libfreetype6-dev libdevil1c2 libdevil-dev

Your package manager will probably prompt you to install other packages, so just say yes to those.

Cloning the code repository

I prefer to work in a Code/ directory under my home directory.

cd ~/Code

You are now ready to clone the repository, type:

git clone https://github.com/lubosz/ArxFatalis.git

This creates a directory called ArxFatalis and downloads lubosz's current master branch of the source code from github.

cd ArxFatalis

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 depending on your machine configuration. Run cmake like this:

cmake . -DARX_USE_UNITYBUILD=1

And make without the -j flag, since in effect there is only one file to build, named ub_arx.cpp

Running the executable

cd bin

WINEDEBUG=-all ./arx.exe

You will need to obtain a copy of the data files from a commerical copy of Arx, or use the demo data files, put these in your bin directory and you are ready to go!

You have to change the pak files to small cases. SFX.pak => sfx.pak.

If you are using the open-source mesa graphics driver stack (intel, radeon, nouveau) and get graphical corruptions (upside-down image, black frames) you might need to set HKCU\Software\Wine\Direct3D\OffscreenRenderingMode to backbuffer in regedit. (see http://wiki.winehq.org/UsefulRegistryKeys)

For running arx in a debugger, see Debugging