This page outlines procedures for compiling SpMp from its source code. For installing from pre-compiled packages, see Installation.

Requirements

All platforms:
Linux (optional, for packaging AppImage):

Downloading source code

From a command-line terminal:

  1. Clone the SpMp Git repository and its submodules git clone https://github.com/toasterofbread/spmp --recurse-submodules

  2. Enter the cloned directory cd spmp

Compiling

Android

Gradle command: androidApp:packageRelease (Debug: androidApp:packageDebug)

To build separate APKs for each CPU architecture instead of a single universal APK, add the argument -PenableApkSplit to the Gradle command.

Compiled APK(s) will be stored in androidApp/build/outputs/apk/.

Linux

Gradle command:

  • Tarball: desktopApp:packageReleaseTarball
  • Jar: desktopApp:packageReleaseUberJarForCurrentOS
  • AppImage: desktopApp:packageReleaseAppImage

Outputs will be placed in desktopApp/build/outputs.

Windows

Gradle command:

  • Standalone zip: desktopApp:packageReleaseZip
  • Installer exe: desktopApp:packageReleaseExe

Zips will be placed in desktopApp/build/outputs and installer exe files into desktopApp/build/compose/binaries/.

Packaging with SpMs

Prior to 8d386c2 (or release v0.4.0), SpMs had to be manually packaged with distributions of SpMp as a separate binary. It is now included in all builds (including local non-package builds) by default.