设为首页 收藏本站
查看: 1041|回复: 0

[经验分享] TensorFlow 0.9.0 从源码安装及bug修复

[复制链接]

尚未签到

发表于 2017-6-7 07:18:40 | 显示全部楼层 |阅读模式
  为了熟悉tensorflow,我采用从源码安装,期间也熟悉了linux下的一些知识,解决了一些问题,记录如下:
  版本:


  • tensorflow:0.9.0 (GitHub: tensorflow)
  • Ubuntu:14.04 64位(32位不可以,亲测有效)
  安装:

Tensorflow(简易安装步骤)
  接下来,就可以按照Tensorflow Download and Setup中的Pip Installation开始安装,命令如下:

# Ubuntu/Linux 64-bit, CPU only:
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
# Ubuntu/Linux 64-bit, GPU enabled. Requires CUDA toolkit 7.5 and CuDNN v4.  For
# other versions, see "Install from sources" below.
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl

    csdn(推荐安装步骤):
    http://blog.csdn.net/forest_world/article/details/51306432
     官网安装步骤:
    www.tensorflow.org/   (有点混乱,建议使用csdn上步骤)
    github版本:
    https://github.com/tensorflow/tensorflow
  编译时错误(内存错误和包安装版本不对)

编译时:virtual memory exhausted: Cannot allocate memory


  内存不足。
  解决方法:http://blog.csdn.net/taiyang1987912/article/details/41695895
  安装完成后,就可以测试,是否安装成功:

$ python
>>> import tensorflow as tf
>>>
  如果输入命令后,结果跟上述的差不多,(GPU版的会有一些log信息),没有出现Error,那就说明安装好了,就可以测试使用啦。
  在tensorflow/tools/pip_package/setup.py中,关于几个包(numpy , six, protobuf)的版本等都有规定,如果不满足,则编译代码就会报错:

# tensorflow version
_VERSION = '0.9.0'
...
REQUIRED_PACKAGES = [
'numpy >= %s' % numpy_version,
'six >= 1.10.0',
'protobuf == 3.0.0b2',
]
  查看这些包的命令行是:

$ pip show numpy protobuf six
出问题比较多的是protobuf和six pip包,例如:

  Pip
  如果已经安装过pip,可以跳过这里的安装步骤。

$ sudo apt-get install python-pip python-dev python-setuptools build-essential
$ sudo pip install --upgrade pip
$ sudo pip install --upgrade virtualenv
  为了检测是否安装好,可以查看pip的版本:

$ pip --version
pip 8.1.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)


  • protobuf

    from google.protobuf import symbol_database as _symbol_database
ImportError: cannot import name symbol_database

    protobuf如果已经安装了其他版本(例如python-protobuf或低版本),先要卸载掉:

$ sudo apt-get remove python-protobuf
$ sudo pip uninstall protobuf
  然后安装:

$ sudo pip install --upgrade protobuf

  • six

AttributeError: type object 'NewBase' has no attribute 'is_abstract'
  出现这个问题,应该是six包安装有问题,可以卸载原有版本,重新安装:

$ sudo pip uninstall six
$ sudo pip install six --upgrade
  一般来说six包的安装位置是/usr/lib/python2.7/dist-packages,建议先试前者(工作站上也是前者),如果six版本还是没有改变,则指定安装位置,如下:

$ sudo pip install six --upgrade --target="/usr/lib/python2.7/dist-packages"
此处我的pip出现错误了,提示缺少utils包。
解决方法:在python官网上下载pip最新的源码,python setup.py install

  关于GPU版,CUDA安装及编译问题,不在此作答~   安装步骤上图
   DSC0000.png
DSC0001.png DSC0002.png


4 Uninstall
  如果想卸载掉安装的tensorflow,非常简单:

$ sudo pip uninstall tensorflow

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-384478-1-1.html 上篇帖子: 关于Qt creator 无法使用fcitx输入中文的问题折腾 下篇帖子: Win10一周年纪念版,瞧一瞧Linux子系统
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表