张小白教你如何在Ununtu 18.04上源码安装MindSpore Lite V1.1.0

网友投稿 753 2022-05-30

MindSpore Lite V1.1.0在Windows 10上的安装比较简单(参见博客:张小白教你如何在Win10上源码安装MindSpore Lite V1.1.0 https://bbs.huaweicloud.com/blogs/239829 ),但是不知道Ubuntu 18.04上会怎么样呢?

打开安装文档的页面 https://www.mindspore.cn/tutorial/lite/zh-CN/r1.1/use/build.html#linux

可以看到,Linux下的依赖要比Windows复杂得多。但是,再复杂的问题,张小白也要坦然面对,是不是?

runtime(cpp)编译依赖

CMake >= 3.18.3

GCC >= 7.3.0

Android_NDK >= r20

Git >= 2.28.0

converter编译依赖

CMake >= 3.18.3

GCC >= 7.3.0

Android_NDK >= r20

Git >= 2.28.0

Autoconf >= 2.69

Libtool >= 2.4.6

LibreSSL >= 3.1.3

Automake >= 1.11.6

Libevent >= 2.0

M4 >= 1.4.18

OpenSSL >= 1.1.1

runtime(java)编译依赖

CMake >= 3.18.3

GCC >= 7.3.0

Android_NDK >= r20

Git >= 2.28.0

Android SDK

Gradle >= 6.6.1

OpenJDK >= 1.8

一个一个来吧。

首先,需要一个带gcc 7.3.0的ubuntu 18.04的版本。这个张小白在以前的博客中提到过多次了。

如果你想安装ubuntu 18.04的虚拟机,可以参见 https://bbs.huaweicloud.com/blogs/198324 的Part Two

如果你想源码安装gcc 7.3.0,可以参见  https://bbs.huaweicloud.com/blogs/198349 的Part Two

这里不再赘述。

其他部分的安装我们一个一个地撸起袖子加油干吧。。

CMake >= 3.18.3 (实际3.19.3,满足)

wget https://github.com/Kitware/CMake/releases/download/v3.19.3/cmake-3.19.3-Linux-x86_64.sh

好像又是龟速下载,那么通过gitee过渡吧。。。(具体的方法是在gitee导入github的仓库,然后对gitee的仓库进行操作)

git clone https://gitee.com/zhanghui_china/CMake.git

进入Cmake目录,执行编译和安装:

./bootstrap && make && sudo make install

。。

查看cmake版本

cmake --version

Android_NDK >= r20(实际r20b,满足)

wget https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip

可见这个网络貌似还不大稳定。。不过wget会重连,所以耐心等待即可。。

unzip android-ndk-r20b-linux-x86_64.zip

在/etc/profile加入以下代码:

export ANDROID_NDK=/home/ascend/r1.1/android-ndk-r20b(具体路径取决于你解压后的目录名)

export PATH=$PATH:$ANDROID_NDK

source /etc/profile执行以使得变量生效。

Git >= 2.28.0(实际2.30.0,满足)

先看下当前操作系统自带的git的版本。

git --version

需要2.28.0.不够。

sudo add-apt-repository ppa:git-core/ppa

sudo apt update

sudo apt install git

git --version

2.30.0 现在够了。

Autoconf >= 2.69(实际2.70,满足)

wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.70.tar.gz

解压autoconf-2.70.tar.gz

tar -xzvf autoconf-2.70.tar.gz

进入autoconf目录,分别执行

./configure

make

sudo make install

autoconf --version

2.70,满足。

Libtool >= 2.4.6(实际2.4.6,满足)

wget https://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz

tar -xzvf libtool-2.4.6.tar.gz

进入目录后,老三样,放一起吧。

./configure;make;sudo make install

LibreSSL >= 3.1.3(实际3.1.3,满足)

wget https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.3.1.tar.gz

这个文件下载得比较曲折。。。

每下载3%-4%就断掉。。。

。。。

。。。

ubuntu自己都坚持不下去了。。。好在有人提供了版本造福大家。感恩。。。

将文件传上去

tar -xzvf libressl-3.3.1.tar.gz解压

进入目录,老三样

./configure

make;sudo make install

Automake >= 1.11.6(实际1.15.1,满足)

这个就直接用apt安装了。

Libevent >= 2.0(实际2.1.12,满足)

wget https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz

下了2遍,所以文件名末尾加了1.

将下载OK的文件名改回来,再解压

tar -zxvf libevent-2.1.12-stable.tar.gz

老三样搞起

./configure;make;sudo make install

M4 >= 1.4.18(实际1.4.18,满足)

wget http://mirrors.kernel.org/gnu/m4/m4-1.4.18.tar.gz

从上面的重试可以知道下载是多么的艰难,辛苦了乌班图。。

解压 tar -xzvf m4-1.4.18.tar.gz

进入目录老三样

./configure;make;sudo make install

m4 --version

OpenSSL >= 1.1.1(实际1.1.1i,满足)

wget https://www.openssl.org/source/openssl-1.1.1i.tar.gz

解压

tar -zxvf openssl-1.1.1i.tar.gz

进入目录后老三样

./config

make

张小白教你如何在Ununtu 18.04上源码安装MindSpore Lite V1.1.0

sudo make install

Gradle >= 6.6.1(实际6.8.1,满足)

wget https://services.gradle.org/distributions/gradle-6.8.1-bin.zip

unzip gradle-6.8.1-bin.zip

在/etc/profile中增加gradle环境变量

export GRADLE_PATH=/home/ascend/r1.1/gradle-6.8.1

export PATH=$PATH:$ANDROID_NDK:$GRADLE_PATH/bin

执行生效

source /etc/profile

检查版本

gradle -version

OpenJDK >= 1.8(实际1.8.0_275,满足)

sudo apt-get install openjdk-8-jre

java -version

Android SDK

“通过Android command line tools安装Android SDK”

新建个 AndroidSDK目录

在/etc/profile中增加环境变量

export ANDROID_SDK_ROOT=/home/ascend/r1.1/AndroidSDK

source /etc/profile使得环境变量生效。

下载sdk-tools

wget https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip

解压 unzip sdk-tools-linux-3859397.zip

解压后会在/home/ascend/r1.1/AndroidSDK 目录下生成一个tools目录

在/etc/profile增加PATH

export PATH=$PATH:$ANDROID_SDK_ROOT/toos:$ANDROID_SDK_ROOT/toos/bin

source /etc/profile使得环境变量生效。

mkdir ~/.android

touch ~/.android/repositories.cfg

sdkmanager --no_https --list

cd /home/ascend/r1.1/AndroidSDK/tools/bin

sdkmanager --sdk_root=${ANDROID_SDK_ROOT} "cmdline-tools;latest"

先接受下面的条款:

。。。

按Y继续。

接受所有的许可证

yes | ./sdkmanager --licenses

。。。

至此,依赖都安装完毕。

下面开始编译MindSpore Lite的源码。

根据MindSpore团队王辉老师的建议,使用 bash build.sh -I x86_64 -j8 进行编译

。。。耐心等待编译结束

编译成功,开始尝试converter

tar -zxvf mindspore-lite-1.1.0-converter-linux-x64.tar.gz

更新下/etc/profile

sudo vi /etc/profile

export CONVERTER_BASE=/home/ascend/lite-master/mindspore/output/mindspore-lite-1.1.0-converter-linux-x64

export LD_LIBRARY_PATH=$CONVERTER_BASE/lib:$CONVERTER_BASE/third_party/glog/lib:$LD_LIBRARY_PATH

export PATH=$PATH:$CONVERTER_BASE/converter

source /etc/profile使得环境变量生效

cd $CONVERTER_BASE/converter

./converter_lite --fmk=MINDIR --modelFile=mobilenetv2.mindir --outputFile=mobilenetv2

模型转换成功了。。说明目前ubuntu 18.04下的mindspore lite已成功安装。

(全文完,谢谢阅读)

BTW:附件目前提供了libressl-3.3.1.tar.gz。由于不支持gz文件上传,特将文件名改名为gz1然后打包成rar,如有需要,可解压后将gz1文件还原成gz再导入linux即可进行安装。

附件: libressl-3.3.1.tar.rar 3.65MB 下载次数:0次

MindSpore

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《TypeScript图形渲染实战:2D架构设计与实现》 —1.2.4 第一个TypeScript程序
下一篇:Hadoop搭建伪分布式
相关文章