Build Instructions
Contents
Getting the source
Clone the source code using git, and grab all the submodules:
git clone --recursive https://github.com/PrismLauncher/PrismLauncher.git
cd PrismLauncher
The rest of the documentation assumes you have already cloned the repository.
Building
Tested on OpenBSD 7.0-alpha i386. It should also work on older versions.
Build dependencies
- A C++ compiler capable of building C++11 code (included in base system).
- Qt Development tools 5.12 or newer (meta/qt5).
- cmake 3.1 or newer (devel/cmake).
- extra-cmake-modules (devel/kf5/extra-cmake-modules)
- zlib (included in base system).
- Java JDK (devel/jdk-1.8).
- GL headers (included in base system).
- lwjgl (games/lwjgl and games/lwjgl3).
You can use IDEs, like KDevelop or QtCreator, to open the CMake project if you want to work on the code.
Building a portable binary
mkdir install
# configure the project
cmake -S . -B build \
-DCMAKE_INSTALL_PREFIX=./install -DCMAKE_PREFIX_PATH=/usr/local/lib/qt5/cmake -DENABLE_LTO=ON
# build
cd build
make -j$(nproc) install
cmake --install install --component portable
Building & installing to the system
This is the preferred method of installation, and is suitable for packages.
# configure everything
cmake -S . -B build \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX="/usr/local" \ # /usr/local is default in OpenBSD and FreeBSD
-DCMAKE_PREFIX_PATH=/usr/local/lib/qt5/cmake # use linux layout and point to qt5 libs
-DENABLE_LTO=ON # if you want to enable LTO/IPO
-DLauncher_QT_VERSION_MAJOR="5"
cd build
make -j$(nproc) install # Optionally specify DESTDIR for packages (i.e. DESTDIR=${pkgdir})
Pages in Build Instructions:
Comment Rules
By submitting a comment, you agree to uphold the Prism Launcher Code of Conduct.
✅ What user-contributed comments are for
- Share additional information relevant to the article.
- Mention a workaround for a common issue.
- Link to useful third-party resources that are relevant to the current page, such as tutorials or articles.
- It is allowed to occasionally link to resources you've created. When doing so, you must disclose your affiliation with the resource in some way. However, linking to resources you've created should not represent the majority of your interactions with user notes. Excessive self-promotion is not allowed and will be moderated away.
🚫 What user-contributed comments are not for
- Do not point out something in the documentation being incorrect or outdated.
- Instead, open an issue on the prismlauncher.org issue tracker. If you can, please open a pull request to improve the documentation.
- You can use the Edit button at the bottom of each documentation page for this purpose.
- Do not ask support questions. Please use other community platforms instead.
- Do not submit bug reports. Please use the main Prism Launcher repository's issue tracker instead.
- Do not submit feature requests. Please use the Prism Launcher repository's issue tracker repository instead.
- Do not post off-topic comments. Comments must be strictly related to the page they are linked to.
Comments not following the above rules will be removed.
Licensing of user-contributed comments
Launcher contributors may occasionally go through the comments and may incorporate information from them in the documentation. By submitting a comment, you accept that it may be incorporated in unmodified or modified form in the launcher and/or documentation, subject to the GPL-3.0 license for the launcher and AGPL-3.0 license for the documentation.