Skip to content

Latest commit

 

History

History
70 lines (44 loc) · 3.29 KB

2.1-Linux编译教程.md

File metadata and controls

70 lines (44 loc) · 3.29 KB

Linux 编译教程

本教程需要读者有一定的 Linux 环境配置能力及编程基础!

虽然没想明白为什么 Linux 下需要用助手挂模拟器,嘛总之大家有这个需求还是弄一下_(:з」∠)_

作者是 Linux 小白,所以虽说是教程,也只是分享一下自己的踩坑经历,如果遇到其他问题欢迎提出 ISSUE 一起讨论下 orz

下载编译第三方库

Opencv

请自行搜索教程安装,没什么特别的,作者当前成功验证过的版本为4.5.3版本。其他版本应该也可以,但仍然推荐使用4.5.3版本,与项目保持一致,避免一些不必要的问题。仅Opencv本体即可,不需要额外安装opencv_contrib

PaddleOCR

  1. 使用我魔改了接口的版本:https://github.com/MaaAssistantArknights/PaddleOCR
  2. 参考 这个教程
  3. 额外依赖的 paddle_inference 直接 下载 即可。其中 avxmkl 两者都可以提高计算效率,建议选择。但如果 CPU 不支持,则只能选择 noavxopenblas 的兼容性版本(一般稍微新一点的 CPU 都支持两者了,AMD 的也没关系)。 cudacudnn 是 GPU 加速库,在 PaddleOCR 上可能比较麻烦,我没折腾过,有兴趣可以尝试下
  4. cmake 找不到 Opencv ,可尝试修改 Opencv 的查找路径
  5. 若您使用 MKL 版本,需要关闭 MKL 宏定义 (改为 false

编译选项参考

cmake ../ -DPADDLE_LIB=/your_path/paddle_inference/ -DOpenCV_DIR=/your_path_to_opencv/ -DWITH_STATIC_LIB=OFF -DBUILD_SHARED=ON
# 若设备不支持 MKL, 可再额外添加 -DWITH_MKL=OFF 选项,并下载对应的 PaddlePaddle 预测库版本

zlib

Ubuntu 下:

sudo apt update && sudo apt install zlib1g-dev
sudo ldconfig

其他发行版若源中没有 zlib, 也可尝试通过 源码 编译

MeoAssistant

  1. 直接拷贝上面编译的第三方库到 3rdparty/lib 或者 手动修改 CMakeLists.txt 指定第三方库路径

  2. 3rdparty/include/opencv 中的头文件是 4.5.3 版本的,若是使用其他版本,请注意头文件冲突问题(直接将你的 opencv 头文件覆盖过去就好)

  3. 安装 adb

  4. 复制资源文件到 libMeoAssitant.so 同一目录下

    cd tools
    sh ./update_resource.sh <YourBuildDir>
  5. 通过 Python 接口C 接口 进行调用,需要自行编写少量的代码

  6. cmake 可通过添加 -DBUILD_TEST=ON 选项来编译一个测试小 demo

集成文档

或许算不上文档

Python

可参考 Python demo__main__ 的实现

C

可参考 TestCaller 中的实现

C sharp

可参考 MeoAsstGui 中的实现