# android-v8 **Repository Path**: mirrors_NativeScript/android-v8 ## Basic Information - **Project Name**: android-v8 - **Description**: Contains the Google's V8 build used in android runtime. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-02-13 - **Last Updated**: 2026-03-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # android-v8 Contains the Google's V8 build used in android runtime. ### How to build (linux) * get depot tools [more](https://www.chromium.org/developers/how-tos/install-depot-tools) : ``` git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH=`pwd`/depot_tools:"$PATH" ``` * Make sure you have these packages installed (Linux only) ``` sudo apt-get install curl libc6-dev-i386 g++-multilib ``` * Download and extract Android NDK r22b Linux: ``` curl -O https://dl.google.com/android/repository/android-ndk-r22b-linux-x86_64.zip unzip android-ndk-r22b-linux-x86_64.zip -d ndkr22b ``` * Export ANDROID_NDK_HOME environment variable ``` export ANDROID_NDK_HOME=`pwd`/ndkr22b/android-ndk-r22b ``` * `fetch v8` (this will create a `v8` repo folder and add a `.gclient` file) * Add `target_os` to the `.gclient` file: This will ensure that the required build dependencies are fetched by depot_tools ``` solutions = [ { "url": "https://chromium.googlesource.com/v8/v8.git", "managed": False, "name": "v8", "deps_file": "DEPS", "custom_deps": {}, }, ] target_os = ['android'] ``` * checkout tag 9.7.106.13 ``` cd v8 git checkout 9.7.106.13 ``` * Run sync ``` gclient sync ``` * Create symlinks ``` cp third_party/android_ndk/BUILD.gn $ANDROID_NDK_HOME rm -rf third_party/android_tools third_party/android_ndk mkdir third_party/android_tools ln -s $ANDROID_NDK_HOME third_party/android_tools/ndk ln -s $ANDROID_NDK_HOME third_party/android_ndk ``` * Apply patch running the following command ``` cd .. ./apply_patch.sh ``` * run the following command in the root folder command ``` cd .. ./build.sh ``` > you can run: `../build_v8 debug` if you want to build v8 in debug, by default it's built in release. ### Outputs The output folder is called `dist` and it's created at `v8` root level. ### HOW TO CREATE A NEW PATCH file git diff --cached > patch.diff ### What to do next * Copy the files from the **v8/dist** folder in the corresponding folder in [android-runtime](https://github.com/NativeScript/android-runtime/tree/master/test-app/runtime/src/main/libs) * Copy the files from the **v8/buildtools/third_party/libc++/trunk/include** (libc++) into [android-runtime/test-app/runtime/src/main/cpp/include/libc++](https://github.com/NativeScript/android-runtime/tree/master/test-app/runtime/src/main/cpp/include/libc++) * Update the **v8-versions.json** file in the [android-runtime root folder](https://github.com/NativeScript/android-runtime/blob/master/v8-versions.json) * Update the **settings.json** file in [android-runtime/build-artifacts/project-template-gradle](https://github.com/NativeScript/android-runtime/tree/master/build-artifacts/project-template-gradle/settings.json) * Replace all the needed header and inspector files in the repo. The following [article](https://github.com/NativeScript/android-runtime/blob/master/docs/extending-inspector.md) might be helpful