参考:
cmake ..
-DCMAKE_TOOLCHAIN_FILE=/home/jiahang/Android/Sdk/ndk/android-ndk-r20b/build/cmake/android.toolchain.cmake
-DANDROID_NDK=/home/jiahang/Android/Sdk/ndk/android-ndk-r20b
-DANDROID_NATIVE_API_LEVEL=android-21
-DBUILD_JAVA=OFF
-DBUILD_ANDROID_EXAMPLES=OFF
-DBUILD_ANDROID_PROJECTS=OFF
-DANDROID_STL=c++_shared
-DBUILD_SHARED_LIBS=ON
-DCMAKE_INSTALL_PREFIX:PATH=/home/jiahang/Desktop/absolute/opencv/android_build/out
-DANDROID_ABI=arm64-v8a
上面的不好用,再试下面的:
/home/jiahang/Android/Sdk/cmake/3.10.2.4988404/bin/cmake
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
-DCMAKE_TOOLCHAIN_FILE="/home/jiahang/Android/Sdk/ndk/android-ndk-r20b/build/cmake/android.toolchain.cmake"
-DANDROID_SDK_ROOT="/home/jiahang/Android/Sdk"
-DANDROID_NDK="/home/jiahang/Android/Sdk/ndk/android-ndk-r20b"
-DANDROID_NATIVE_API_LEVEL=android-21
-DANDROID_ABI="arm64-v8a"
-D WITH_CUDA=OFF
-D WITH_MATLAB=OFF
-D BUILD_ANDROID_EXAMPLES=OFF
-D BUILD_DOCS=OFF
-D BUILD_PERF_TESTS=OFF
-D BUILD_TESTS=OFF
-DCMAKE_INSTALL_PREFIX="android_opencv"
..
make -j12
发现sdk有问题:
解决:
在opencv_android中建立local.properties文件,写入:
sdk.dir = /home/jiahang/Android/Sdk
发现NDK有问题:
解决:
配置环境变量:
sudo vim ~/.bashrc
末尾写入:
export ANDROID_NDK_HOME=/home/jiahang/Android/Sdk/ndk/android-ndk-r20b
然后:
source ~/.bashrc
最后
make install