前言:之前尝试过用anaconda安装,简单轻松一切正常使用。但由于我想要使用android demo,而官网教程只给了利用源码安装tensorflow的使用教程,所以就用源码重装了一遍tensorflow。想要把tensorflow用在手机端的同学最好还是用源码安装吧。
首先,已提前安装好cuda8.0和cudnn。如pip等如果未安装可以根据错误提示安装
1.下载tensorflow
$ git clone --recurse-submodules https://github.com/tensorflow/tensorflow
2.安装bazel(感觉很麻烦)
2017.10修改==================================================
tensorflow又升级了,重新安装新版本要求bazel 0.5.4以上,而我的是0.5.1,感觉升级很麻烦,所以尝试了bazel的另外一种安装方法,方便之后的升级:
1.安装jdk:
sudo apt-get install openjdk-8-jdk
如果是14.04,需要ppa
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update && sudo apt-get install oracle-java8-installer
2.将bazel 的url加入到源:
echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add -
3.安装bazel
sudo apt-get update && sudo apt-get install bazel
若只需要更新,只需
sudo apt-get update
sudo apt-get upgrade bazel
说明:
若之前是采用下面的方法进行安装,即使成功更新了bazel,依然显示是之前安装的版本,此时需要将其删除。如下面所述,我之前将bazel安装在/home/seven/bin,那我直接删除此文件夹即可。
2017.10修改完=========================================================
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer
$ sudo gedit /etc/environment
在打开的文件的最后加入一行:
JAVA_HOME = "/usr/lib/jvm/java-8-oracle"
之后继续安装一些需要的包
$ sudo apt-get install pkg-config zip g++ zlib1g-dev unzip
然后到如下地址如下载bazel安装文件:https://github.com/bazelbuild/bazel/releases,
寻找自己适合的版本,如我的就是 bazel-0.5.1-installer-linux-x86_64.sh(linux,64位)
接着终端切换到保存 bazel-0.5.1-installer-linux-x86_64.sh文件的路径进行安装:
(注意自己的bezel版本)
$ cd 你的路径
$ chmod +x bazel-0.5.1-installer-linux-x86_64.sh
$ ./bazel-0.5.1-installer-linux-x86_64.sh --user
$ sudo gedit ~/.bashrc
在弹出来的窗口的最后一行加入:
export PATH=$PATH:'/home/seven/bin'
'/home/seven/bin'
是我路径,即/home/用户名/bin,请注意替换
继续安装依赖项
$ sudo apt-get install python-numpy python-dev python-wheel
$ sudo apt-get install libcupti-dev
3.编译tensorflow源码
首先切换到tensorflow的根目录,然后config
$ cd tensorflow/
$ ./configure
这步给的选择太多了。。。我就不一一说明了。。。下面给出我的选择,除了使用cuda全部都是回车以他默认的为准。选择了使用cuda后会让你给出cuda的版本、安装位置、cudnn具体版本、安装位置等,照你的配置写就好。
漫漫长途终于到了最后的一点点了:
$ bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
$ sudo pip install /tmp/tensorflow_pkg/自己的.whl文件(此路径下自己找)
搞定收工!
4.验证安装
终端输入:$ python
然后improt tensorflow as tf
如果未报错,则大功告成!
友情提示:如果import出现如下错误,请检查你的终端是不是再tensorflow的根目录路径,如果是,cd ..
退出该路径,再次尝试。