User Tools

Site Tools



This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
devel:compiling_and_running_2.0 [2018-12-15 22:15]
skyjake [Get the source]
devel:compiling_and_running_2.0 [2020-12-22 14:36]
skyjake [Compiling and running Doomsday 2.0–2.2 with CMake]
Line 1: Line 1:
 +====== Compiling and running Doomsday 2.0–2.3 with CMake ======
 +Doomsday 2 is built with [[https://​|CMake]] 3.1 (or later).
 +===== Get the source =====
 +There are a couple of ways to get the source code:
 +  * Download a [[http://​​source|source package]]. ​
 +  * Check out the [[https://​​skyjake/​Doomsday-Engine|Doomsday-Engine]] repository from GitHub: <code bash>git clone --recursive https://​​skyjake/​Doomsday-Engine</​code>​ You can then switch to any release or a specific build via tags. Stable releases are tagged "​release-x.y.z"​.
 +===== Install dependencies =====
 +The following libraries are required for compilation:​
 +  * Qt 5 (modules: Core, Network, Gui, OpenGLExtensions,​ Widgets)
 +  * Qt 5 X11Extras module (on Unix/X11)
 +  * DirectX (on Windows)
 +The following are optional:
 +  * SDL 2 (joystick support)
 +  * SDL_mixer 2 (audio plugin)
 +  * FMOD Studio Low-Level Programmer API for Doomsday 2.1+, or FMOD Ex for  Doomsday 2.0 or earlier (audio plugin)
 +  * OpenAL (audio plugin)
 +  * libXrandr and libXxf86vm (X11 display mode support)
 +===== Create build directory =====
 +You must create a separate directory that is used for the build files. In-tree builds are not supported.
 +===== Build and deploy =====
 +After the dependencies are available, run CMake and configure the appropriate build variables.
 +  * Normally you will want to set the ''​CMAKE_BUILD_TYPE''​ to "​Release"​. Note that with gcc/clang, omitting this variable will result in an unoptimized build.
 +  * Set the ''​PREFIX''​ variable to define the installation root path.
 +  * Set the ''​QMAKE''​ variable to the path of the qmake tool to use (unless autodetected). This determines which version of Qt will be used in the build.
 +  * ''​DENG_ENABLE_*''​ are used for enabling and disabling Doomsday features.
 +  * ''​*_DIR''​ (e.g., ''​FMOD_DIR''​) are used for configuring locations of third-party libraries.
 +When CMake has configured the build successfully,​ run your chosen build tool.
 +After building, you must still deploy the binaries (e.g., using ''​make install''​) because Doomsday expects a particular runtime directory layout.
devel/compiling_and_running_2.0.txt · Last modified: 2021-09-01 08:37 by skyjake