编译SeetaFace2
1. NDK配置
1.1 cd到下载的目录:cd /home/lven/
1.2 下载:wget https://dl.google.com/android/repository/android-ndk-r21d-linux-x86_64.zip
1.3 解压:unzip android-ndk-r21d-linux-x86_64.zip
1.4 配置
## 1. 打开文件
vim /etc/profile
## 2. 尾部插入
## 配置路径
export ANDROID_NDK=/home/lven/tool/android-ndk-r21d
export ANDROID_TOOLCHAINS="$ANDROID_NDK/toolchains/llvm/prebuilt/linux-x86_64"
export ANDROID_SYSROOT="$ANDROID_TOOLCHAINS/sysroot"
## 配置路径到环境变量
export PATH=$ANDROID_NDK:$PATH
export PATH=$ANDROID_TOOLCHAINS:$PATH
export PATH=$ANDROID_SYSROOT:$PATH
## export ANDROID_CC="$ANDROID_TOOLCHAINS/bin/x86_64-linux-android21-clang"
## export ANDROID_CXX="$ANDROID_TOOLCHAINS/bin/x86_64-linux-android21-clang++"
## 3. 刷新
source /etc/profile
2. CMake(3.18.1)配置
2.1 cd到下载的目录:cd /home/lven/tool/
2.2 下载:wget https://github.com.cnpmjs.org/Kitware/CMake/releases/download/v3.18.1/cmake-3.18.1-Linux-x86_64.tar.gz
2.3 解压:tar zxvf cmake-3.18.1-Linux-x86_64.tar.gz
2.4 配置环境变量
## 2.4.1环境变量配置(配置这里就行了)
vim /etc/profile
export PATH=$PATH:/home/lven/tool/cmake-3.18.1-Linux-x86_64/bin
## 或者2.4.2 环境变量配置(这个可以不配置)
gedit ~/.bashrc
export PATH=/home/lven/tool/cmake-3.18.1-Linux-x86_64/bin:$PATH
source ~/.bashrc
## 2.4.3 软件连接配置(软连接得配置,不然说找不到cmake)
ln -sf /home/lven/tool/cmake-3.18.1-Linux-x86_64/bin/* /usr/bin/
3. 下载SeetaFace2
3.1 安装git:sudo apt install git
3.2 git clone https://github.com.cnpmjs.org/seetafaceengine/SeetaFace2.git
3.3 编译过程
- 编译 cd 到 SeetaFace2
- 编写face2.sh
#!/bin/bash
rm -rf build
mkdir build
cd build
ANDROID_NDK="/home/lven/tool/android-ndk-r21d"
cmake .. -DCMAKE_INSTALL_PREFIX=install \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI="armeabi-v7a with NEON" \
-DANDROID_PLATFORM=android-21 \
-DBUILD_EXAMPLE=OFF
cmake --build . --config MinSizeRel --target install/strip
- 执行 sh face2.sh
3.4 编译好的头文件和so位置(SeetaFace2/build/install)
4. 注意事项
NDK的版本和Cmake的版本要对应,如果不对应会编译报错,生成不了so文件。
网友评论