centos7系统,使用bazel编译tensorflow-gpu总结

编译bazel和tensorflow使用下面链接

https://cloud.tencent.com/developer/article/1435005

编译过程报错

编译gcc: error: unrecognized command line option '-std=c++14'

有两个可能的错误,①:gcc没有安装或者是安装的版本过低了,所以建议先查看是否安装了,没有安装运行:yum -y install gcc gcc-c++,安装了运行gcc -v查看版本,我的版本是4.8.5的,后来升级gcc版本,升级到8.3了,更新过程可以查看https://blog.csdn.net/qq_33047753/article/details/102805075(注意,使用命令好下载gcc,tar -zxvf 解压又可能不能用,这个跟安装JDK有关系,所以可以去官网下载,再传上服务器运行解压命令就可以成功了);

②cmake没有安装成功,本身先使用yum install cmake,安装成功了,但是编译的时候还是报上面的错误,在网上查了很多,跟我需要的都不符合,有一个博主写了cmake版本低了,我就重新编译了cmake,可以根据该博主写的https://blog.csdn.net/xingyu97/article/details/97108108,进行编译,

可是要命的的是,看了这个博主的https://blog.csdn.net/fpcc/article/details/102664881,发现不是那个cmake版本问题,是软连接问题,可是根据他写的,我运行cmke .,一直报错,我也不知道是因为啥,后来我就没有管了,重新对tensorflow编译

bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package 

没有问题,就是自己总结一下吧,希望可以帮一些朋友吧。

顺便提一下,编译cmake,我也报错了

error: return-statement with no value, in function returning ‘unsigned int’ [-fpermissive],后面还有啥,我忘了,我刚开始使用的是cmake2.8.5,报上面的错,后来我就没有用了,就是用cmake-3.15的,但是也报错了,好像是gcc版本不对呀,这里最好还是指定一下吧,以防万一

  1. export CC=/usr/local/bin/gcc

  2. export CXX=/usr/local/bin/g++

不过还有可能报错

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.23' not found (required by */3rd-party/protobuf-2.4.1/src/.libs/libprotobuf.so.7)
/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.24' not found (required by */3rd-party/protobuf-2.4.1/src/.libs/libprotoc.so.7)

先运行:strings /usr/lib64/libstdc++.so.6 |grep GLIBCXX 得到结果,查看是否有需要的,没有就运行

strings /usr/local/lib64/libstdc++.so.6 |grep GLIBCXX,应该是有的

然后更新:

1)sudo rm -rf /usr/lib64/libstdc++.so.6  //删除旧文件

2)sudo cp /usr/local/lib64/libstdc++.so.6 /usr/lib64  //复制文件

3)sudo ln -s /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6 //链接到新版本

就OK 了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值