pytorch/scripts
Ivan Kobzarev 47cd15c643 Script for full android build to aars; script to run android tests (#26833)
Summary:
1. scripts/build_android_libtorch_and_pytorch_android.sh
- Builds libtorch for android_abis (by default for all 4: x86, x86_64, armeabi-v7a, arm-v8a) but cab be specified only custom list as a first parameter e.g. "x86"
- Creates symbolic links inside android/pytorch_android to results of the previous builds:
`pytorch_android/src/main/jniLibs/${abi}` -> `build_android/install/lib`
`pytorch_android/src/main/cpp/libtorch_include/${abi}` -> `build_android/install/include`

- Runs gradle assembleRelease to build aar files
proxy can be specified inside (for devservers)

2. android/run_tests.sh
Running pytorch_android tests, contains instruction how to setup and run android emulator in headless and noaudio mode to run it on devserver
proxy can be specified inside (for devservers)

#Test plan
Scenario to build x86 libtorch and android aars with it and run tests:
```
cd pytorch
sh scripts/build_android_libtorch_and_pytorch_android.sh x86
sh android/run_tests.sh
```
Tested on my devserver - build works, tests passed
Pull Request resolved: https://github.com/pytorch/pytorch/pull/26833

Differential Revision: D17673972

Pulled By: IvanKobzarev

fbshipit-source-id: 8cb7c3d131781854589de6428a7557c1ba7471e9
2019-09-30 14:25:00 -07:00
..
appveyor
fbcode-dev-setup remove "build_deps" arg from setup.py command in (#26113) 2019-09-12 15:34:21 -07:00
model_zoo
onnx
add_apache_header.sh
apache_header.txt
apache_python.txt
build_android.sh update build_android.sh to not build host protoc for libtorch (#25896) 2019-09-10 15:19:43 -07:00
build_host_protoc.sh
build_ios.sh Disable bitcode for iOS CI jobs (#26478) 2019-09-19 15:38:57 -07:00
build_local.sh
build_mobile.sh add script to build mobile library with host toolchain (#26440) 2019-09-18 19:34:09 -07:00
build_pytorch_android.sh Script for full android build to aars; script to run android tests (#26833) 2019-09-30 14:25:00 -07:00
build_raspbian.sh
build_tegra_x1.sh
build_tizen.sh
build_windows.bat
diagnose_protobuf.py
get_python_cmake_flags.py
proto.ps1
read_conda_versions.sh
README.md
remove_apache_header.sh
run_mobilelab.py
temp.sh
xcode_ios_x86_build.rb Add testing script for iOS x86 build (#26632) 2019-09-23 11:21:21 -07:00

This directory contains the useful tools.

build_android.sh

This script is to build PyTorch/Caffe2 library for Android. Take the following steps to start the build:

  • set ANDROID_NDK to the location of ndk
export ANDROID_NDK=YOUR_NDK_PATH
  • run build_android.sh
#in your PyTorch root directory
bash scripts/build_android.sh

If succeeded, the libraries and headers would be generated to build_android/install directory. You can then copy these files from build_android/install to your Android project for further usage.

You can also override the cmake flags via command line, e.g., following command will also compile the executable binary files:

bash scripts/build_android.sh -DBUILD_BINARY=ON

build_ios.sh

This script is to build PyTorch/Caffe2 library for iOS, and can only be performed on macOS. Take the following steps to start the build:

  • Install Xcode from App Store, and configure "Command Line Tools" properly on Xcode.
  • Install the dependencies:
brew install cmake automake libtool
  • run build_ios.sh
#in your PyTorch root directory
bash scripts/build_ios.sh

If succeeded, the libraries and headers would be generated to build_ios/install directory. You can then copy these files to your Xcode project for further usage.