Linux-Ubuntu16安装MNN-未成功,暂停

1.MNN下载地址

https://github.com/alibaba/MNN

2.参考博主

https://blog.csdn.net/ab0902cd/article/details/99691443

2_1.出现问题:

versions.proto:1:10: Unrecognized syntax identifier "proto3".  This parser only recognizes "proto2".

参考博主

https://blog.csdn.net/AmbitiousRuralDog/article/details/80774518

推测因为protobuf版本过低导致。

安装protobuf参考博主

https://www.jianshu.com/p/6bf604c9748a

2_1_1.出现问题:

执行sudo ldconfig时出现以下错误:
/sbin/ldconfig.real: /usr/local/cuda/lib64/libcudnn.so.7 is not a symbolic link
参考博主

https://www.jianshu.com/p/b308d3bbde8a

找到问题:

输入命令:

sudo ln -sf /usr/local/cuda/lib64/libcudnn.so.7.1.3 /usr/local/cuda/lib64/libcudnn.so.7

继续执行sudo ldconfig后,没有弹出错误

2_1_1问题解决

继续将博主

https://www.jianshu.com/p/6bf604c9748a

的流程走完,安装完protobuf。

protoc--version命令可以查看protobuf版本。

2_1问题解决。

继续参考博主

https://blog.csdn.net/ab0902cd/article/details/99691443

2_2.出现问题

Protobuf compiler version 3.6.0 doesn't match library version 2.6.1
Call Stack (most recent call first):
  CMakeLists.txt:64 (find_package)

此问题曾经在安装ncnn的时候出现过,当时直接讲protobuf版本改回了2.6.1,ncnn能用了,但是模型转换没有成功。。

此处的意思是:protobuf编译器版本与库版本不匹配。

参考博主

http://www.manongjc.com/article/60995.html

注意加上sudo即:sudo vim /etc/ld.so.conf

sudo ldconfig

export LD_LIBRARY_PATH=/usr/local/lib

重新尝试,问题没有解决。

还原回去。

回看博主

https://www.jianshu.com/p/6bf604c9748a

里面说了一句话,(如果findpackage报错注意添加lib和include到环境变量)。

于是尝试在环境变量里面加入lib和include。

添加: PATH=/usr/local/protobuf/include:$PATH

添加: PATH=/usr/local/protobuf/lib:$PATH

重新尝试,问题没有解决

应该时自己还不会添加环境变量,尝试如下:

sudo ldconfig
sudo gedit ~/.bashrc
添加:export PATH=/usr/local/protobuf/bin:$PATH
     export LD_LIBRARY_PATH=/usr/local/protobuf/lib:$LD_LIBRARY_PATH
source ~/.bashrc

2_2问题解决

重新回到博主

https://blog.csdn.net/ab0902cd/article/details/99691443

运行到cd build && cmake .. && make -j4这一步。此时不会出现刚才的错误了。

2_3出现问题

 undefined reference to `google::protobuf::internal::RegisterAllTypes(google::protobuf::Metadata const*, int)'
source/tensorflow/libtensorflow.so: undefined reference to `typeinfo for google::protobuf::internal::MapFieldBase'
怀疑还是protobuf的问题,2_2问题中还是没有添加include,这里尝试添加一下。

参考博主

https://www.cnblogs.com/image-eye/archive/2011/08/20/2147133.html

但是不会填写,尤其时“:”后面该怎么写。应该时追加的意思,就是将环境变量加入,而不是将原有的全部替换。

我的修改是

export PATH=/usr/local/protobuf/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/protobuf/lib:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=/usr/local/protobuf/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/usr/local/protobuf/include:$CPLUS_INCLUDE_PATH

重新尝试,问题没有解决

卡在此处进行不下去了,ubuntu16.04上默认安装的protobuf的版本是2.6.1,决定重新安装回2.6.1,然后安装两个。

版本兼容安装。

2_3.protobuf重新安装回2.6.1.

重装继续参考博主

https://www.jianshu.com/p/6bf604c9748a

protoc --version查看版本

2_4.参考博主

https://blog.csdn.net/qq_16775293/article/details/81119375

进行安装protobuf3.4.1

等待很长时间后,profile环境变量也配置了。protoc --version查看版本,显示只有2.6.1.

重新尝试,问题没有解决

删除环境变量和该文件夹

2_5.细心是多么的重要,一开始博主

https://blog.csdn.net/ab0902cd/article/details/99691443

就已经提到了protobuf安装教程。尝试该教程。

尝试的是protoc3.4.0版本

在执行sudo make install的时候,出现一个warning

libtool: warning: relinking 'libprotoc.la'

此处先不去理会。

重新尝试,问题没有解决

重新装回2.6.1,参考博主

https://www.jianshu.com/p/6bf604c9748a

2_6.采用兼容的模式,添加软链接

还是先参考博主

https://blog.csdn.net/qq_16775293/article/details/81119375

兼容模式安装

参考博主

https://blog.csdn.net/qq_39024800/article/details/82751323

加个软链接

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值