Skip to content

Build ‐ Linux ‐ Fedora

Parracodea edited this page Mar 23, 2024 · 1 revision

Be sure to check Build for generic instructions.

Current as of 2023-01-08 on Fedora 37

⚠️ Before October 2021, the project relied on SFML. Check the previous instructions if you're building for an older version.

Requirements

Install the prerequisite packages:

dnf install git gcc gcc-c++ cmake python3 ninja-build SDL2-devel SDL2_gfx-devel SDL2_image-devel SDL2_mixer-devel SDL2_ttf-devel SDL2_net-devel rpm-build

Clone the repositories:

git clone https://github.com/daid/SeriousProton.git
git clone https://github.com/daid/EmptyEpsilon.git

Build latest version

Update the repositories to the latest versions of the master branch, then build the source:

cd SeriousProton
git checkout master
git pull
cd ../EmptyEpsilon
git checkout master
git pull

# Build the source:
mkdir -p _build
cd _build
cmake .. -G Ninja -DCPACK_GENERATOR="RPM" -DSERIOUS_PROTON_DIR=$PWD/../../SeriousProton/
ninja

To create a .rpm package, run ninja package. The resulting RPM requires the freetype and SDL2 packages as dependencies.

To create a .deb package with ninja package, remove -DCPACK_GENERATOR="RPM" from the cmake line.

To build from a different git tag or ref, replace master in git checkout master.

To set the EmptyEpsilon version, set the values of the -DCPACK_PACKAGE_VERSION_MAJOR=2022 -DCPACK_PACKAGE_VERSION_MINOR=10 -DCPACK_PACKAGE_VERSION_PATCH=19 variables as described in the Build doc.

Troubleshooting

If the cmake command fails with a message about Ninja support for RPATH, add the -DCMAKE_BUILD_WITH_INSTALL_RPATH=true flag:

cmake .. -G Ninja -DCMAKE_MAKE_PROGRAM=ninja -DCMAKE_BUILD_WITH_INSTALL_RPATH=true -DSERIOUS_PROTON_DIR=$PWD/../../SeriousProton/
Clone this wiki locally