Skip to content
Permalink
master
Switch branches/tags
Go to file
 
 
Cannot retrieve contributors at this time
BUILDING GEMRB WITH CMAKE
-------------------------
Tools you will need to build GemRB:
- cmake
- make
- a C++11 compatible compiler (g++, clang, MSVC and mingw are known to work)
Required dependencies:
- ZLib
- Python 3.3 or better, compiled with shared libraries
- ICONV
- SDL 1.2 or SDL 2.0+ (2.0.12 has a palette issue causing piles to have black outlines)
Optional dependencies:
- OpenAL (for sound; preferred)
- SDL_mixer / SDL2_mixer (lighter alternative sound driver)
- (lib)PNG (for the png importer plugin)
- libvorbis (for ogg/vorbis support)
- FreeType 2.4.2+ (for the TTF fonts plugin)
- (lib)VLC 2.0+ (for movies in some mac distributions of the games)
- OpenGL/OpenGLES drivers and libraries.
- GLEW libraries (Windows only, required for OpenGL support)
When choosing SDL 1.2 or SDL 2.0.x, pass -DSDL_BACKEND=SDL (for 1.2) or
-DSDL_BACKEND=SDL2 (for 2.0) to cmake invocation. You can also invoke cmake
with -DSDL_BACKEND=Auto (default) or even without defining specific backend
for autodetection.
You can explicitly disable searching (and using) a particular optional
dependency by specifying -DUSE_foo=OFF flags (cumulative), where "foo" can be
any name from the above list.
Building GemRB on unix-like systems
-----------------------------------
The following commands will try to configure, make and install GemRB.
mkdir build
cd build
cmake .. [some options]
# Or, you can launch GUI:
cmake-gui ..
make
make install
By default, GemRB is installed into /usr/local ("fhs"). You can pass -DLAYOUT
with "home" or "opt" to change the general layout and -DPREFIX to change the
install path prefix. Check the toplevel CMakeLists.txt to get see all the
individual path components you can additionally alter.
Pass -DCMAKE_BUILD_TYPE=Debug to cmake if you want to create a debug build.
Pass -DNOCOLOR=1 if you want to disable colored console output, which is a
useful option for transparent terminal emulators or non white-on-black color
schemes.
If you're on an exotic platform and get a lot of errors trying to build,
also pass -DDISABLE_WERROR=1, so warnings won't impede you. This option is
also suggested if you're making a source package.
If you want to build the OpenGL driver, first ensure you have a working SDL2
install and using SDL2 backend. Then, if you want the standard driver, pass
-DOPENGL_BACKEND=OpenGL and if you want the OpenGL ES driver, pass
-DOPENGL_BACKEND=GLES.
Building on a Raspberry Pi is supported (tested under Raspbian/Raspberry Pi OS).
The build system will automaticalluy add -DOPENGL_BACKEND=GLES, -DSDL_BACKEND=SDL2
to the build options. By default, the build will try to use the legacy/Broadcom GLES libraries in /opt/vc.
If your system is using the Mesa OpenGL driver with KMS support, pass -DDISABLE_VIDEOCORE
to disable the usage of the legacy/Broadcom drivers and you can use either OpenGL or GLES
for the OPENGL_BACKEND option.
Note: the Pi4 does not support the legacy/Broadcom GLES drivers, so you'll have to explicitely
pass -DDISABLE_VIDEOCORE to the 'cmake' build options.
Please let us know if you encounter any problems while building.
Building GemRB with MSVC
------------------------
Check this guide with detailed instructions for installing dependencies
and building GemRB: https://gemrb.github.io/MSVC-build.html
Building GemRB with mingw
-------------------------
The following commands will try to configure, make and install GemRB.
mkdir build
cd build
cmake .. -G "MinGW MakeFiles"
mingw32-make
mingw32-make install
By default, GemRB is installed into c:\Program Files\GemRB . Supporting
files are mostly installed into the same directory.
See the following for an extensive build walkthrough:
https://gemrb.github.io/MSYS2-build.html