torzu/build-for-android.md
echosys e157415bd9 Update Android app dependencies (#52)
Update the dependencies of the Android app (used libraries and SDK). The Android SDK was not updated to the latest version, because then the build fails.

The `gradle-wrapper.jar` (the only binary blob touched in this PR) can be verified by checking against the official checksums [here](gradle-wrapper.jar).

Co-authored-by: spectranator <spectranator@vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion>
Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/52
Co-authored-by: echosys <echosys@noreply.localhost>
Co-committed-by: echosys <echosys@noreply.localhost>
2024-08-24 16:53:35 +00:00

2.4 KiB

Using Android Studio

Note: These build instructions are a work-in-progress.

Dependencies

WINDOWS ONLY - Additional Dependencies

  • Visual Studio 2022 Community - Make sure to select "Desktop development with C++" support in the installer. Make sure to update to the latest version if already installed.
  • Vulkan SDK - Make sure to select Latest SDK.

Cloning yuzu with Git

from Codeberg repo (the --recursive option automatically clones the required Git submodules):

git clone --depth 1 --recursive https://codeberg.org/litucks/torzu.git
cd torzu

from Torzu repo (assuming Tor is installed as a service):

git -c http.proxy=socks5h://127.0.0.1:9050 clone --depth 1 http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu.git
cd torzu
git submodule update --init --recursive

yuzu by default will be cloned into:

  • C:\Users\<user-name>\torzu on Windows
  • ~/torzu on Linux
  • And wherever on macOS

Building

  1. Start Android Studio, on the startup dialog select Open.
  2. Navigate to the torzu/src/android directory and click on OK.
  3. In Build > Select Build Variant, select release or relWithDebInfo as the "Active build variant".
  4. Build the project with Build > Make Project or run it on an Android device with Run > Run 'app'.

Additional Resources

https://developer.android.com/studio/intro

Using CLI

Note: These build instructions are for building on Debian Bookworm or newer

Dependencies

sudo apt-get update
sudo apt-get install -y sdkmanager openjdk-17-jdk build-essential curl git pkg-config glslang-tools zip
sudo sdkmanager "ndk;26.3.11579264" "platforms;android-34" "build-tools;34.0.0" "cmake;3.22.1" "platform-tools;34.0.5"
sudo update-alternatives --config java # Select Java 17 here if possible

Cloning Yuzu with Git

Follow clone instructions for Android Studio above

Build

./externals/vcpkg/bootstrap-vcpkg.sh -disableMetrics
export ANDROID_HOME=/opt/android-sdk
cd src/android
./gradlew assembleRelease

The APK will be at src/android/app/build/outputs/apk/mainline/release/app-mainline-release.apk