mirror of
https://github.com/mii443/mozc.git
synced 2025-08-22 16:15:46 +00:00
This follows up to my previous commit [1], which introduced
docs/build_mozc_for_android.md
as a dedicated build instruction page for building 'libmozc.so' for
Android as part of removing the dependency on Docker from our build
instructions (#1181).
While the above document uses 'python3' elsewhere, there was one place
where 'python' was used instead. It would be better to avoid 'python'
in favor of PEP 394 [2].
[1]: f215eaf71a
[2]: https://peps.python.org/pep-0394/
PiperOrigin-RevId: 730872687
87 lines
2.3 KiB
Markdown
87 lines
2.3 KiB
Markdown
# How to build `libmozc.so` for Android
|
|
|
|
[](https://github.com/google/mozc/actions/workflows/android.yaml)
|
|
|
|
## Summary
|
|
|
|
If you are not sure what the following commands do, please check the descriptions below
|
|
and make sure the operations before running them.
|
|
|
|
```
|
|
git clone https://github.com/google/mozc.git
|
|
cd mozc/src
|
|
|
|
export PYTHON_VENV_ROOT=${PWD}/python-venv
|
|
python3 -m venv ${PYTHON_VENV_ROOT}
|
|
source ${PYTHON_VENV_ROOT}/bin/activate
|
|
python3 -m pip install requests
|
|
|
|
python3 build_tools/update_deps.py
|
|
|
|
bazelisk build package --config oss_android --config release_build
|
|
```
|
|
|
|
Client code for Android apk is deprecated.
|
|
(the last revision with Android client code is
|
|
[afb03dd](https://github.com/google/mozc/commit/afb03ddfe72dde4cf2409863a3bfea160f7a66d8)).
|
|
|
|
## Setup
|
|
|
|
### System Requirements
|
|
|
|
Currently macOS and Linux are tested to build `libmozc.so` for Android.
|
|
|
|
### Software Requirements
|
|
|
|
Building `libmozc.so` for Android requires the following software.
|
|
|
|
* [bazelisk](https://github.com/bazelbuild/bazelisk)
|
|
* C++ compiler (GCC or clang)
|
|
* Python 3.9 or later with the following pip module.
|
|
* `requests`
|
|
|
|
## Build instructions
|
|
|
|
### Get the Code
|
|
|
|
You can download Mozc source code as follows:
|
|
|
|
```
|
|
git clone https://github.com/google/mozc.git
|
|
cd mozc/src
|
|
```
|
|
|
|
Hereafter you can do all the operations without changing directory.
|
|
|
|
### Set up and enable Python virtual environment
|
|
|
|
The following commands set up Python virtual environment under `mozc/src/python-venv`.
|
|
|
|
```
|
|
export PYTHON_VENV_ROOT=${PWD}/python-venv
|
|
python3 -m venv ${PYTHON_VENV_ROOT}
|
|
source ${PYTHON_VENV_ROOT}/bin/activate
|
|
python3 -m pip install requests
|
|
```
|
|
|
|
Using `mozc/src/python-venv` as the virtual environment location is not mandatory. Any other location should also work.
|
|
|
|
### Check out additional build dependencies
|
|
|
|
```
|
|
python3 build_tools/update_deps.py
|
|
```
|
|
|
|
In this step, additional build dependencies will be downloaded.
|
|
|
|
* [Android NDK r28](https://github.com/android/ndk/wiki/Home/24fe2d7ee3591346e0e8ae615977a15c0a4fba40#ndk-r28)
|
|
* [git submodules](../.gitmodules)
|
|
|
|
### Build `libmozc.so` for Android
|
|
|
|
```
|
|
bazelisk build package --config oss_android --config release_build
|
|
```
|
|
|
|
`package` is an alias to build `android/jni:native_libs`.
|