@@ -31,8 +31,8 @@ cmake --build build -j8 --target run
31
31
Linux users will need to install some pre-requisites for this template to compile.
32
32
33
33
``` shell
34
- sudo apt-get update
35
- sudo apt-get install cmake libx11-dev libxfixes-dev libegl-dev libgbm-dev libfontconfig-dev
34
+ sudo apt update
35
+ sudo apt install cmake libx11-dev libxfixes-dev libegl-dev libgbm-dev libfontconfig-dev
36
36
```
37
37
38
38
# Android
@@ -45,6 +45,45 @@ This template also supports building and running APKs for Android! Setup for thi
45
45
46
46
To build for Android, you need a few SDKs! [ Android Studio] ( https://developer.android.com/studio ) has a good interface for grabbing these, and doubles as a nice tool for inspecting APKs.
47
47
48
+
49
+ ### If building on Linux (CLI): Quick setup
50
+ If you prefer the command line on Linux, this is a minimal setup that matches the versions this template targets.
51
+
52
+ ``` bash
53
+ # 1) Base tools
54
+ sudo apt update
55
+ sudo apt install cmake libx11-dev libxfixes-dev libegl-dev libgbm-dev libfontconfig-dev unzip curl zip ninja-build openjdk-8-jdk adb google-android-cmdline-tools-13.0-installer
56
+
57
+ # 2) to rule out potential errors, we explicitly tell sdkmanager where to install the Android SDK & NDK
58
+
59
+ export ANDROID_HOME=" $HOME /Android/Sdk"
60
+
61
+ sdkmanager --sdk_root=$ANDROID_HOME \
62
+ " platform-tools" \
63
+ " platforms;android-32" \
64
+ " build-tools;32.0.0" \
65
+ " ndk;25.2.9519653"
66
+
67
+ # 3) More environment variable setup...:
68
+
69
+ export ANDROID_SDK_ROOT=" $ANDROID_HOME "
70
+ export PATH=" $ANDROID_HOME /platform-tools:$PATH "
71
+
72
+ # 5) Point CMake to the NDK and set JAVA_HOME (OpenJDK 8 on Ubuntu)
73
+ export ANDROID_NDK_HOME=" $ANDROID_HOME /ndk/25.2.9519653"
74
+ export JAVA_HOME=" /usr/lib/jvm/java-8-openjdk-amd64"
75
+
76
+ # (Optional) Persist these to your shell profile (after install)
77
+ echo ' export ANDROID_HOME="$HOME/Android/Sdk"' >> " $HOME /.bashrc"
78
+ echo ' export ANDROID_SDK_ROOT="$HOME/Android/Sdk"' >> " $HOME /.bashrc"
79
+ echo ' export ANDROID_NDK_HOME="$HOME/Android/Sdk/ndk/25.2.9519653"' >> " $HOME /.bashrc"
80
+ echo ' export PATH="$ANDROID_HOME/platform-tools:$PATH"' >> " $HOME /.bashrc"
81
+ echo ' export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"' >> " $HOME /.bashrc"
82
+ ```
83
+
84
+ ### Now you can continue to Android Build section.
85
+
86
+
48
87
### Android SDKs
49
88
From [ Android Studio] ( https://developer.android.com/studio ) , go to Tools->SDK Manager.
50
89
- Under SDK Platforms, add ** API Level 32**
@@ -102,6 +141,7 @@ mkdir build-android
102
141
103
142
# Configure the build, I'll often make a .bat file for this configure command
104
143
# just to make it easier to do!
144
+
105
145
cmake -B build-android ^
106
146
-G Ninja ^
107
147
-DCMAKE_ANDROID_NDK=%ANDROID_NDK_HOME% ^
@@ -110,6 +150,11 @@ cmake -B build-android ^
110
150
-DCMAKE_ANDROID_ARCH_ABI=arm64-v8a
111
151
# Same, but as a single line. Nicer if not using a .bat
112
152
cmake -B build-android -G Ninja -DCMAKE_ANDROID_NDK=%ANDROID_NDK_HOME% -DCMAKE_SYSTEM_NAME=Android -DCMAKE_SYSTEM_VERSION=32 -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a
153
+
154
+ # Or for Linux:
155
+ cmake -B build-android -G Ninja -DCMAKE_ANDROID_NDK=$ANDROID_NDK_HOME -DCMAKE_SYSTEM_NAME=Android -DCMAKE_SYSTEM_VERSION=32 -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a
156
+
157
+
113
158
# Build an APK, install, and run it
114
159
cmake --build build-android -j8 --target run
115
160
# Or just build an APK
0 commit comments