将Paddle-Lite在树莓派上源码编译及编译python预测库

新手使用Paddle-Lite

第一篇博客,第一次接触树莓派,把我的经历说一说。

文章目录

  • 新手使用Paddle-Lite
  • 一、为什么选Paddle-Lite?
  • 二、使用步骤
    • 1.环境准备
    • 2.源码编译
      • 编译
      • 编译python预测库
  • 总结

一、为什么选Paddle-Lite?

因为我第一次接触人工智能,PaddlePaddle官网https://www.paddlepaddle.org.cn/就有详细可靠的中文教程,还有PaddleX的图形化界面,对新人非常友好。

二、使用步骤

1.环境准备

来自官网的代码:

# 1. Install basic software
apt update
apt-get install -y --no-install-recommends \
  gcc g++ make wget python unzip patchelf python-dev

# 2. install cmake 3.10 or above
wget https://www.cmake.org/files/v3.10/cmake-3.10.3.tar.gz
tar -zxvf cmake-3.10.3.tar.gz
cd cmake-3.10.3
./configure
make
sudo make install

wget那一行我没有使用,我用电脑下载再scp传输过去的,我的树莓派不知道为什么联网特别慢,这样会快一些。

sudo apt install patchelf

这行很关键,缺少这一行导致我多次失败,出现patchelf:not found错误。

2.源码编译

编译

官网代码:

# 1. 下载Paddle-Lite源码 并切换到release分支
git clone https://github.com/PaddlePaddle/Paddle-Lite.git
cd Paddle-Lite && git checkout release/v2.6

git clone那里我又用了scp,解压后得的文件是paddle-lite-develop,记得要改名成Paddle-Lite,注意大小写(导致我懵了好一会)。

# (可选) 删除此目录,编译脚本会自动从国内CDN下载第三方库文件
rm -rf third-party

这个我每次都执行,所以不知道不删怎么样,但还是建议删了。

# 2. 编译Paddle-Lite Linux(arm)预测库 (armv8, gcc编译)
./lite/tools/build_linux.sh

对于装了32位树莓派系统的用户,应该用:

./lite/tools/build_linux.sh --arch==armv7hf

不然无法编译。

编译python预测库

如果想在python里import paddlelite:

./lite/tools/build_linux.sh --arch=armv7hf --with_python=ON --python_version=3.7

版本不一定要填3.7,还可以是2.7或3.5,可以用python查询。
想要更新python版本,参考https://blog.csdn.net/qq_40584960/article/details/86081779
成功的标志是/home/pi/Paddle-Lite/inference_lite_lib.armlinux.armv7hf/python/install/dist里有“.whl”文件的zip。
然后

cd /home/pi/Paddle-Lite/inference_lite_lib.armlinux.armv7hf/python/install/dist
pip install paddlelite-*.whl

即可。

总结

弄了几天,终于成功了。如果你是新手,希望这篇文章能有所帮助。也建议使用PaddlePaddle系列的人能加入官方Q群,那里大家互帮互助,氛围很好,有新手教学,也有我看不懂的讨论。感谢百度工程师,感谢CSDN上很多篇我没法一一列举的文章,感谢帮助我的朋友们。

你可能感兴趣的:(PaddlePaddle,树莓派,python,linux,深度学习)