Skip to content

Compiling from sources

MCMrARM edited this page Aug 23, 2018 · 19 revisions

Compiling the MSA dependency (required for Xbox Live)

Prerequirements

  • Ubuntu - sudo apt-get install libssl-dev libcurl4-openssl-dev qtbase5-dev qtwebengine5-dev

Build instructions

git clone --recursive https://github.com/minecraft-linux/msa-manifest.git msa
cd msa && mkdir -p build && cd build
cmake -DENABLE_MSA_QT_UI=ON ..
make -j12

Installation

You can now optionally install the MSA daemon system-wise. If you don't, you'll need to specify the path to MSA later (and the resulting binary will only work on your system).

  • Generic instructions - Run sudo make install. Note that this doesn't make use of your system package manager, and therefore if possible, it's generally not recommended if there are better alternatives available for your system.
  • Ubuntu - You can create a .deb file and install it using the following commands:
    cpack --config msa-daemon/CPackConfig.cmake
    sudo apt install msa-daemon-0.1.1-Linux.tar.gz
    cpack --config msa-ui-qt/CPackConfig.cmake
    sudo apt install msa-ui-qt-0.1.1-Linux.deb
    

Important Note: Before continuing to the next step, make sure to go to the parent directory with cd ../.. (make sure to return from the build directory and then from the msa directory). This generally applies to the following steps as well.

Compiling the launcher

Prerequirements

  • Ubuntu - you'll need to sudo dpkg --add-architecture i386, then install the required packages: sudo apt-get install g++-multilib libpng-dev:i386 libx11-dev:i386 libxi-dev:i386 libcurl4-openssl-dev:i386 libudev-dev:i386 libevdev-dev:i386 libegl1-mesa-dev:i386

Build instructions

git clone --recursive https://github.com/minecraft-linux/mcpelauncher-manifest.git mcpelauncher
cd mcpelauncher && mkdir -p build && cd build
cmake ..
make -j12

Please note that you may need to replace cmake .. with cmake -DMSA_DAEMON_PATH=/absolute/path/to/daemon/build/dir/msa-daemon .. (e.g. if you ran the previous command in /home/paul/, you'd have to use /home/paul/msa/build/msa-daemon as the path). Note the .. is preceded by a space and is not part of the path to the daemon.

Setting it up

There are two ways to now get started. The recommended one is to use the Metalauncher. The Metalauncher is an user interface for managing Minecraft versions and this launcher, much alike the Java edition launcher. A Google Play account with a purchased copy is required. If you have already obtained an x86 apk (a standard ARM one, will not work!), you can also use the extract utility.

Option 1) Metalauncher

Prerequirements

  • Ubuntu - sudo apt-get install libssl-dev libcurl4-openssl-dev libuv1-dev libzip-dev libprotobuf-dev protobuf-compiler qtbase5-dev qtwebengine5-dev qtdeclarative5-dev qml-module-qtquick2 qml-module-qtquick-layouts qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-window2 qml-module-qtquick-dialogs qml-module-qt-labs-settings qml-module-qt-labs-folderlistmodel

Build instructions

git clone --recursive https://github.com/minecraft-linux/mcpelauncher-ui-manifest.git mcpelauncher-ui
cd mcpelauncher-ui && mkdir -p build && cd build
cmake ..
make -j12

If you haven't installed the launcher, please replace cmake .. with cmake -DGAME_LAUNCHER_PATH=/absolute/path/to/mcpelauncher/build/dir/mcpelauncher-client .. (if you ran the mcpelauncher-manifest stuff in /home/paul, then you'd have to use cmake -DGAME_LAUNCHER_PATH=/home/paul/mcpelauncher-manifest/build/mcpelauncher-client .. as the command)

Option 2) Extract utility

Prerequirements

  • Ubuntu - sudo apt-get install libzip-dev

Build instructions

git clone https://github.com/minecraft-linux/mcpelauncher-extract.git
cd mcpelauncher-extract && mkdir -p build && cd build
cmake ..
make -j12
Clone this wiki locally