【Paddle-Lite】源码编译Paddle-Lite android库的过程

本来准备用源码在本地编译Paddle-Lite,但无奈过程不太友好,多番折腾最终失败放弃,改为从docker编译。


一、安装docker

请参考链接:Docker】Ubuntu16.04安装docker

二、获取源码

git clone https://github.com/PaddlePaddle/Paddle-Lite.git

默认的分支是develop分支,为了在一个相对稳定的版本上工作,我将切换分支。

cd Paddle-Lite
git checkout release/v2.0.0-beta2

三、建立容器

首先获取docker镜像。

docker pull paddlepaddle/paddle-lite:2.0.0_beta

然后进入容器。

docker run -it \
  --name paddlelite_docker \
  -v /home/work/Paddle-Lite:/Paddle-Lite \
  --net=host \
  paddlepaddle/paddle-lite:2.0.0_beta /bin/bash

将容器命名为paddlelite_docker,将我克隆的代码文件夹挂载到容器中的/Paddle-Lite这个根目录下,并进入容器中。至此,完成Docker环境的准备。

四、编译Paddle-Lite

Paddle-Lite文件夹下的编译脚本./lite/tools/build.sh支持三种编译模式。

编译参数说明:

4.1 编译tiny publish动态库

./lite/tools/build.sh \
  --arm_os=android \
  --arm_abi=armv8 \
  --build_extra=ON \
  --arm_lang=gcc \
  --android_stl=c++_static \
  --build_extra=ON \
  tiny_publish

4.2 编译full publish动态库

./lite/tools/build.sh \
  --arm_os=android \
  --arm_abi=armv8 \
  --build_extra=ON \
  --arm_lang=gcc \
  --android_stl=c++_static \
  --build_extra=ON \
  full_publish

我最终编译的full_publish的版本。

扫描二维码关注公众号,回复: 9074946 查看本文章

编译中

编译完成

编译生成的文件都在这个文件夹下。

inference_lite_lib.android_armv8下面有这几个文件夹。

生成的动态库和静态库。

发布了437 篇原创文章 · 获赞 590 · 访问量 61万+

猜你喜欢

转载自blog.csdn.net/heiheiya/article/details/104250175