美文网首页
Linux环境下,交叉编译SeetaFace2

Linux环境下,交叉编译SeetaFace2

作者: Sky_Blue | 来源:发表于2021-08-04 12:00 被阅读0次

编译SeetaFace2

SeetaFace2 Git地址

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文件。

相关文章

网友评论

      本文标题:Linux环境下,交叉编译SeetaFace2

      本文链接:https://www.haomeiwen.com/subject/tczupltx.html