-
Notifications
You must be signed in to change notification settings - Fork 135
Android
WangBin edited this page Jul 1, 2018
·
9 revisions
Supported host platforms:
- Windows
- Linux
- macOS
Requirements:
- environment var
ANDROID_NDK - gcc>=4.8, or clang
- Unified headers or not
Environment Variables:
- USE_TOOLCHAIN: clang or gcc
Command:
./avbuild.sh android[api_level] "arch1 arch2 ..." # gcc toolchain. TODO: clang if no gcc is found
USE_TOOLCHAIN=clang ./avbuild.sh android[api_level] "arch1 arch2 ..." # clang for all
./avbuild.sh android[api_level] "arch1 arch2-clang ..." # gcc toolchain for arch1, clang for arch2
api_level can be empty to use default value. Default is 14 for 32bit and 21 for 64bit.
Unified headers are used if present.
export FFSRC=/path/to/ffmpeg # if no ffmpeg source fold under this dir
./avbuild.sh android # gcc build for default archs (armv5, armv7, arm64, x86)
./avbuild.sh android armv7 # gcc build for armv7
./avbuild.sh android16 "armv7 arm64" # gcc build for armv7 api level 16 and arm64 api level 21(21 is min level for 64bit)
./avbuild.sh android "armv7-clang arm64" # clang build for armv7, gcc build for arm64
The result dir struct is sdk-android-{gcc,clang}/{include,lib/{armeabi,armeabi-v7a,arm64,x86}}