Skip to content

Commit d823c9a

Browse files
trasnake87claude
andcommitted
Clarify source build instructions for qt6 branch and cmake compatibility
Add explicit build instructions for the recommended qt6 branch with the correct git clone command (-b qt6), document the CMAKE_POLICY_VERSION_MINIMUM workaround for cmake 4.0+ compatibility with older submodules like eglut, and clearly separate the deprecated main branch instructions from the recommended qt6 path. Addresses #120 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 856d948 commit d823c9a

1 file changed

Lines changed: 20 additions & 5 deletions

File tree

src/source_build/launcher.md

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
<div class="warning">
44

5-
The qt5 version is deprecated and only supported on distributions with protobuf that not depends on abseil and uses cmake 3.x.
5+
The default (main) branch uses Qt5 and is deprecated. It is only supported on distributions with protobuf that does not depend on abseil and that use cmake 3.x.
66

7-
Use branch qt6 for cmake 4.0 and newer protobuf.
7+
**For most users, the `qt6` branch is recommended.** It supports cmake 4.0 and newer protobuf. See the [qt6 branch instructions](#building-the-qt6-branch-recommended) below.
88

99
</div>
1010

@@ -16,18 +16,33 @@ Use branch qt6 for cmake 4.0 and newer protobuf.
1616
- **Fedora** (Up to date as of 2024-08-21) - you'll need to install the
1717
required packages:
1818
`sudo dnf install clang cmake make git ca-certificates libstdc++ glibc-devel libpng-devel zlib-devel libX11-devel libXi-devel libcurl-devel systemd-devel libevdev-devel mesa-libEGL-devel alsa-lib-devel pulseaudio-libs-devel mesa-dri-drivers systemd-devel libXtst-devel openssl-devel qt5-qtbase-devel qt5-qtwebengine-devel qt5-qtdeclarative-devel qt5-qtsvg-devel qt5-qtquickcontrols qt5-qtquickcontrols2`
19-
- **Arch** (Up to date as of 2024-12-02) - you'll need to install the
19+
- **Arch** (Up to date as of 2024-12-02) - you'll need to install the
2020
required packages:
2121
`sudo pacman -S gcc clang ca-certificates openssl libpng libx11 libxi gcc-libs glibc zlib curl systemd libevdev mesa alsa-lib pulseaudio libxtst qt5-base qt5-webengine qt5-declarative qt5-svg qt5-quickcontrols qt5-quickcontrols2`
2222
- **macOS** - you'll need to install the required packages:
2323
`brew install cmake libpng openssl@1.1 qt@5`
2424

25-
## Build instructions
25+
## Building the qt6 branch (recommended)
26+
27+
The `qt6` branch is the actively maintained branch. To build it:
28+
29+
``` bash
30+
git clone --recursive -b qt6 https://github.com/minecraft-linux/mcpelauncher-manifest.git mcpelauncher && cd mcpelauncher
31+
mkdir -p build && cd build
32+
CC=clang CXX=clang++ cmake .. -Wno-dev -DCMAKE_BUILD_TYPE=Release -DJNI_USE_JNIVM=ON
33+
make -j$(getconf _NPROCESSORS_ONLN)
34+
```
35+
36+
> **Note:** Some submodules (such as eglut) may specify an older minimum cmake version (e.g. 3.5). If you encounter cmake policy errors when building with cmake 4.0+, try adding `-DCMAKE_POLICY_VERSION_MINIMUM=3.5` to the cmake command.
37+
38+
## Build instructions (main branch, deprecated)
39+
40+
> **Warning:** The main branch uses Qt5 and is deprecated. Prefer the [qt6 branch](#building-the-qt6-branch-recommended) unless you specifically need the Qt5 version.
2641
2742
``` bash
2843
git clone --recursive https://github.com/minecraft-linux/mcpelauncher-manifest.git mcpelauncher && cd mcpelauncher
2944
mkdir -p build && cd build
30-
CC=clang CXX=clang++ cmake .. -Wno-dev -DCMAKE_BUILD_TYPE=Release -DJNI_USE_JNIVM=ON
45+
CC=clang CXX=clang++ cmake .. -Wno-dev -DCMAKE_BUILD_TYPE=Release -DJNI_USE_JNIVM=ON
3146
make -j$(getconf _NPROCESSORS_ONLN)
3247
```
3348

0 commit comments

Comments
 (0)