手机版
你好,游客 登录 注册
背景:
阅读新闻

部署TensorFlow后导入出现如下错误解决办法

[日期:2017-01-06] 来源:Linux社区  作者:ucode [字体: ]

部署环境:
操作系统:CentOS release 6.5 (Final)
Python版本:
Python 2.7.10 (default, Dec 22 2016, 14:45:25)
[GCC 4.8.2] on linux2

[root@linuxidc ~]# python
Python 2.7.10 (default, Dec 22 2016, 14:45:25)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
Segmentation fault (core dumped)
[root@paris ~]#

解决方法:
问题:scipy和tensorflow冲突

部署环境:CentOS6 python2.7 scipy 0.12.0 tensorflow0.8.0

问题描述:

在上述环境中部署tensorflow0.8.0的时候,安装没有问题,import tensorflow时报错:Segmentation fault (core dumped)

探索过程:

1、用virtualenv创建一个不附带任何模块的纯净环境,安装tensorflow发现安装和使用一切正常

2、说明tensorflow和我的主机环境中某些模块有冲突

3、现在就要判断与哪个模块冲突,为了节省时间,我在这用了类似于索引顺序表查找的想法,对照我的实体机环境,一次安装多个模块,然后验证是否出错,直到出错,说明问题处在最后一组,而一次安装那些模块,是按照依赖关系来的,比如C依赖AB,我就把ABC放在一组,直接安装C,顺便也就安装依赖AB,按照这种方法,找到了一组冲突,就是安装sklearn之后tensorflow不能正常工作,出现如上报错。于是判定应该是sklearn或者依赖模块与tensorflow冲突。挨个尝试sklearn的依赖numpy、scipy时发现是scipy和tensorflow的冲突。

4、尝试解决冲突:考虑到可能是版本问题,尝试过多个版本的组合,发现scipy可以和tensorflow0.5.0共存,于是得到一个初步解决。但是,tensorflow的0.5.0缺少了一些新版的功能和优点,后通过下述方法解决

解决办法:

手工编译scipy:

到https://pypi.Python.org/pypi/scipy/

下载https://pypi.python.org/packages/05/5e/973bf71cfa865d962a68893e35e366a0a7ac0b713bc398b4e584c1bed982/scipy-0.17.1.tar.gz#md5=8987b9a3e3cd79218a0a423b21c8e4de

解压后安装:

python setup.py install

这样就不会有冲突了

Ubuntu 16.04安装配置TensorFlow GPU版本  http://www.linuxidc.com/Linux/2016-11/137561.htm

Ubuntu 16.04下CUDA8.0+Theano+Caffe+TensorFlow环境搭建  http://www.linuxidc.com/Linux/2016-09/135528.htm

TensorFlow 的Mac OS 下的部署和安装  http://www.linuxidc.com/Linux/2016-07/133219.htm

TensorFlow编译过程中遇到的问题及解决方案  http://www.linuxidc.com/Linux/2016-07/133216.htm

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-01/139281.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款