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

举报
张辉 发表于 2021/01/29 05:06:08 2021/01/29
【摘要】 本文介绍了Ubuntu 18.04下源码安装MindSpore Lite 1.1.0

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

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

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

一个一个来吧。

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

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

如果你想源码安装gcc 7.3.0,可以参见  https://bbs.huaweicloud.cn/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

image.png

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

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

image.png

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

./bootstrap && make && sudo make install

image.png

。。

image.png

查看cmake版本

cmake --version

image.png

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

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

image.png

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

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

image.png

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

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

export PATH=$PATH:$ANDROID_NDK

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

image.png

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

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

git --version

image.png

需要2.28.0.不够。

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

image.png

sudo apt update

image.png

sudo apt install git

image.png

git --version

image.png

2.30.0 现在够了。

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

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

image.png

解压autoconf-2.70.tar.gz

tar -xzvf autoconf-2.70.tar.gz

image.png

进入autoconf目录,分别执行

./configure

image.png

make

image.png

sudo make install

image.png

autoconf --version

image.png

2.70,满足。

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

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

image.png

tar -xzvf libtool-2.4.6.tar.gz

image.png

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

./configure;make;sudo make install

image.png

image.png

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

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

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

image.png

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

image.png

。。。

image.png

。。。

image.png

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

将文件传上去

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

进入目录,老三样

./configure

image.png

make;sudo make install

image.png

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

这个就直接用apt安装了。

image.png

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

image.png

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

image.png

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

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

image.png

老三样搞起

./configure;make;sudo make install

image.png

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

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

image.png

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

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

image.png

进入目录老三样

image.png

./configure;make;sudo make install

image.png

m4 --version

image.png

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

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

image.png

解压

tar -zxvf openssl-1.1.1i.tar.gz

image.png

进入目录后老三样

./config

image.png

make

image.png

sudo make install

image.png

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

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

image.png

unzip gradle-6.8.1-bin.zip

image.png

在/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

image.png

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

sudo apt-get install openjdk-8-jre

image.png

image.png

java -version

image.png

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

image.png

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

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

image.png

在/etc/profile增加PATH

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

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

image.png

mkdir ~/.android

touch ~/.android/repositories.cfg

sdkmanager --no_https --list

image.png

image.png

image.png

image.png

image.png

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

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

先接受下面的条款:

image.png

。。。

image.png

按Y继续。

image.png

接受所有的许可证

yes | ./sdkmanager --licenses

image.png

。。。

image.png

至此,依赖都安装完毕。

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

image.png

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

image.png

image.png

。。。耐心等待编译结束

image.png

编译成功,开始尝试converter

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

image.png

image.png

更新下/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

image.png

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

(全文完,谢谢阅读)

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

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。