tensorflow安装笔记

源代码编译安装(linux环境)

tensorflow有两种安装方式,直接下载google编译好的安装包,或者自己编译安装包,前者比较方便,但是安装时容易因为机器的环境配置差异导致安装失败,后者想对麻烦,但是可以在自己的机器上一步步编译出适合自己机器环境的安装包。

这里简单介绍下安装从源代码编译安装的步骤:

下载源代码:

git clone https://github.com/tensorflow/tensorflow.git

编译工具安装:

安装python3.5, 并配置环境变量,通过pip install xxx 安装numpy dev mock wheel ,并测试是否安装成功

安装gcc 6.3.0 (表面c++新特性引起的语法错误),并配置环境变量

安装bazel:

由于我的系统是redhat,没有现成的安装包可以下载,所以只好从源代码编译安装包(https://bazel.build/versions/master/docs/install.html#compiling-from-source):从bazelbuild/bazel下载名字格式为bazel-<VERSION>-dist.zip的安装包【注意,该包中不仅包含了源代码,还包含编译依赖的库,如果直接从git上下载bazel源代码进行编译,会报很多编译错误,最好是用dist的包进行编译】

解压,进入加压后的目录,运行sh compile.sh, 生成 ./output/bazel 可执行文件,添加到path中,运行bazel –version测试是否安装成功

运行sh compile.sh时可能会报一些lib库文件找不到的错误,或者一些c++预发错误,通常可以通过升级gcc和配置LD_LIBRARAY_PATH环境变量来解决

编译源代码并安装
进入tensorflow源代码目录,运行configure, 里面会有一些配置选项,注意python的版本是否正确,还有选择-match=native,这个可以根据自己的机器环境编译合适的安装包;

运行

bazel build -c opt //tensorflow/tools/pip_package:build_pip_package

命令,开始编译,可能会报一些错误,比如lib文件找不到,汇编指令无法识别等,这些可以通过检查环境变量是否生效和编译工具的版本是否比较新 来解决,还有就是重新执行configure 修改编译选项,多尝试最后可以编译过的。

编译完成后,构建pip包的脚本放在bazel-bin/tensorflow/tools/pip_package/build_pip_package 这个目录下,通过执行

 bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/pip_pck_dir/

可以生成安装包,后缀为*.whl

运行

 pip install /tmp/pip_pck_dir/*.whl 

可以安装tensorflow

安装好后进行测试,进入python命令行界面,敲入import tensorflow as tf, 回车会报错,这时,需要再配置下tensorflow的开发环境,执行下面的命令即可

mkdir _python_build
cd _python_build
ln -s ../bazel-bin/tensorflow/tools/pip_package/build_pip_package.runfiles/org_tensorflow/* .
ln -s ../tensorflow/tools/pip_package/* .
python setup.py develop

tensorflow 开发小例子

直接饮用下tensorflow代码页的例子,如下

>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> sess.run(hello)
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> sess.run(a+b)
42
>>>
    原文作者:多肉小主
    原文地址: https://zhuanlan.zhihu.com/p/25020125
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞