Compiling xoreos
This page gives a few tips and pointers on how to compile xoreos on various platforms.
Compiler and build system
xoreos is written in C++, so a C++ compiler, like GCC or clang is required. Its build system is based on Autotools, more specifically Autoconf, Automake and Libtool.
GNU/Linux
On Debian-based distributions (including Ubuntu), you should be able to install the required compiler and build system packages with
apt-get install libc6-dev g++ make autoconf automake libtool
On other distributions, it should work similarily.
Mac OS X
Due to the dependency on SDL2 (see below), you need at least Mac OS X 10.5 if you use a precompiled SDL2 library, and at least Mac OS X 10.7 if you're compiling SDL2 yourself.
Windows
Our build system is autotools-based, so we unfortunately do not support Visual Studio. Windows users need to install MinGW. For further information, please read this note.
Libraries
xoreos uses the following libraries to function:
- iconv
- zlib (>= 1.2.3.4)
- liblzma (>= 5.0.5)
- Boost (>= 1.42.0)
- Boost.StringAlgo
- Boost.System
- Boost.Filesystem
- Boost.Regex
- Boost.Unordered
- Boost.Hash
- Boost.Date_Time
- Boost.Function
- Boost.Bind
- Boost.Uuid
- Boost.Smart_Ptr
- Boost.Atomic
- OpenGL (>= 2.1)
- SDL2 (>= 2.0.0)
- FreeType 2 (>= 2.4.0 (libtool number >= 11.0.5))
- OpenAL (>= 1.12)
- MAD (>= 1.15.1b)
- libogg (>= 1.2.0)
- libvorbis (>= 1.3.1)
- libfaad (>= 2.7)
- libxvidcore (>= 1.2.2)
On Debian-based GNU/Linux distribution (including Ubuntu), you should be able to install these libraries and their development packages with
apt-get install zlib1g-dev liblzma-dev libboost-all-dev libsdl2-dev libfreetype6-dev \ libopenal-dev libmad0-dev libogg-dev libvorbis-dev libfaad-dev libxvidcore-dev
Other GNU/Linux distributions should work similarily. Windows users have to visit each website manually and download a precompiled version, or, if not available, download the source and compile the library themselves.
Compiling xoreos
Open a terminal, change into the directory of your sources and type
./autogen.sh && ./configure && make
This should compile xoreos successfully if the compiler, build system and libraries have been installed correctly. The binary can be found in the src subdirectory, called "xoreos" or, on Windows, "xoreos.exe". Alternatively, you can install it system-wide with
make install
Please also have a look at the Running xoreos page.
A note on build systems and Visual Studio
There are certain build systems that promise to generate both standard Makefiles and Visual Studio project files. I have tried CMake, SCons and qmake, and found them all lacking, so they're unfortunately not an option for xoreos.
Another options would be to parse our Automake files, and generate Visual Studio project files out of them. ScummVM does something similar with its create_project, but their Makefiles are a bit different than ours. Somebody™ "just" needs to adapt ScummVM's create_project. So far, no one has.