环境搭建

使用 docker

1. 安装 docker

安装 docker 的方式,参考 官方文档

2. 使用 docker 搭建构建环境

首先进入 paddle-mobile 的目录下,执行 docker build以 Linux/Mac 为例 (windows 建议在 'Docker Quickstart Terminal' 中执行)

  1. $ docker build -t paddle-mobile:dev - < Dockerfile

使用 docker images 可以看到我们新建的 image

  1. $ docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. paddle-mobile dev 33b146787711 45 hours ago 372MB

3. 使用 docker 构建

进入 paddle-mobile 目录,执行 docker run

  1. <span class="markdown-equation" id="equation-0"></span>PWD,target=/paddle-mobile paddle-mobile:dev
  2. root@5affd29d4fc5:/ # cd /paddle-mobile
  3. # 生成构建 android 产出的 Makefile
  4. root@5affd29d4fc5:/ # rm CMakeCache.txt
  5. root@5affd29d4fc5:/ # cmake -DCMAKE_TOOLCHAIN_FILE=tools/toolchains/arm-android-neon.cmake
  6. # 生成构建 linux 产出的 Makefile
  7. root@5affd29d4fc5:/ # rm CMakeCache.txt
  8. root@5affd29d4fc5:/ # cmake -DCMAKE_TOOLCHAIN_FILE=tools/toolchains/arm-linux-gnueabi.cmake

4. 设置编译选项

可以通过 ccmake 设置编译选项

  1. root@5affd29d4fc5:/ # ccmake .
  2. Page 1 of 1
  3. CMAKE_ASM_FLAGS
  4. CMAKE_ASM_FLAGS_DEBUG
  5. CMAKE_ASM_FLAGS_RELEASE
  6. CMAKE_BUILD_TYPE
  7. CMAKE_INSTALL_PREFIX /usr/local
  8. CMAKE_TOOLCHAIN_FILE /paddle-mobile/tools/toolchains/arm-android-neon.cmake
  9. CPU ON
  10. DEBUGING ON
  11. FPGA OFF
  12. LOG_PROFILE ON
  13. MALI_GPU OFF
  14. NET googlenet
  15. USE_EXCEPTION ON
  16. USE_OPENMP OFF

修改选项后,按 c, g 更新 Makefile

5. 构建

使用 make 命令进行构建

  1. root@5affd29d4fc5:/ # make

6. 查看构建产出

构架产出可以在 host 机器上查看,在 paddle-mobile 的目录下,build 以及 test/build 下,可以使用 adb 指令或者 scp 传输到 device 上执行

不使用 docker

不使用 docker 的方法,可以直接用 cmake 生成 makefile 后构建。使用 ndk 构建 android 应用需要正确设置 NDK_ROOT。构建 linux 应用需要安装 arm-linux-gnueabi-gcc 或者类似的交叉编译工具,可能需要设置 CC,CXX 环境变量,或者在 tools/toolchains/ 中修改 arm-linux-gnueabi.cmake,或者增加自己需要的 toolchain file。