Compiling MSA (for Xbox Live)

Prerequirements

  • Ubuntu 18.04+ - sudo apt-get install libssl-dev libcurl4-openssl-dev qtbase5-dev qtwebengine5-dev
  • Ubuntu 16.04 - You must add a Qt 5.9+ repository first (add-apt-repository ppa:beineri/opt-qt596-xenial && apt-get update) from which you should install apt-get install qt59base qt59webengine; also install apt-get install libssl-dev libcurl4-openssl-dev
  • Fedora - sudo dnf install openssl-devel libcurl-devel qt5-qtbase-devel qt5-qtwebengine-devel
  • macOS - brew install cmake qt

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

macOS: replace the cmake line with cmake -DCMAKE_PREFIX_PATH=$(brew --prefix qt) -DENABLE_MSA_QT_UI=ON ..

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 dpkg -i  ./msa-daemon-*-Linux.deb && sudo apt-get install -f
    cpack --config msa-ui-qt/CPackConfig.cmake
    sudo dpkg -i  ./msa-ui-qt-*-Linux.deb && sudo apt-get install -f
    

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.