This compilation guide has been tested with Fedora 35 and Ubuntu 21.10
Setting up the environment
Download and install QT from here QT Installer
Make sure to install the Multimedia components under 'Additional Libraries' in the installer. As of February 2022, there is an Audio Glitch, specific to QT 6.2.2 and bellow, so in order to make Audio work properly, you will have to install 6.2.3 and above.
Once installed, modify your ~/.bashrc to include the following:
LD_LIBRARY_PATH=/home/username/Qt/6.2.3/gcc_64/lib:$LD_LIBRARY_PATH
Modify it so that it matches your installation of Qt
Install cmake, latest version. In general, those included by default in the system packages are not suitable as they tend to be outdated.
Compilation Setup
git clone the source from the master branch Install the latest version of Vulkan for your distribution. Modify the CMakeLists.txt file, to include the following, such that you change it to match your installation directories:
set(Qt6_DIR "/home/username/Qt/6.2.3/gcc_64/lib/cmake/Qt6")
set(XDG_RUNTIME_DIR "/run/user/1000")
set(XKB_INCLUDE_DIR "/usr/include/xcb")
set(XKB_LIBRARY "/usr/lib/x86_64-linux-gnu/")
set(Vulkan_INCLUDE_DIR "/usr/lib/x86_64-linux-gnu/")
Compiling with CMake
Finally run
cmake .
make
sudo make install
The game will be compiled and installed on the system
Compiling with a custom version of cmake
You may also pass a custom version of cmake that is not installed on the system, but located in another folder for instance:
/home/username/Qt/Tools/CMake/bin/cmake -B build -DCMAKE_PREFIX_PATH="/home/username/Qt/6.4.2/gcc_64/lib/cmake" -DOPENSSL_INCLUDE_DIR=/usr/lib/x86_64-linux-gnu -DOPENSSL_SSL_LIBRARY=/usr/lib/x86_64-linux-gnu/libssl.so.1.1 -DOPENSSL_CRYPTO_LIBRARY=/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 -DCMAKE_BUILD_TYPE=Debug
This will generate a debug build, that outputs extra information, useful to find issues with the compilation or dependencies specific to Linux, causing errors.
Reporting issues
As of now, the issues can be directly reported through the github Issues Page open one up, in case there are glitches or bugs found.