Ubuntu 環境 TensorFlow (最新版1.4) 源碼編譯、安裝


Ubuntu 環境 TensorFlow 源碼編譯安裝

基於(Ubuntu 14.04LTS/Ubuntu 16.04LTS/)

一、編譯環境

1) 安裝 pip

sudo apt-get install python-pip python-dev

2)安裝JDK 8

sudo apt-get install openjdk-8-jdk

Ubuntu 14.04 LTS 還需要:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update && sudo apt-get install oracle-java8-installer

3)安裝Bazel

A: 添加 Bazel URI 到 package source

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 -

B:更新&安裝

sudo apt-get update
sudo apt-get install bazel

如果已經安裝過,更新則:

sudo apt-get upgrade bazel

C:設置環境變量

一次執行

export PATH="$PATH:$HOME/bin"

直接添加到.bashrc ,打開bashrc 最后一行加入(PATH="$PATH:$HOME/bin")

vim ~/.bashrc
PATH="$PATH:$HOME/bin"

4)安裝其他依賴包

sudo apt-get install libcupti-dev
sudo pip install --upgrade protobuf
sudo apt-get install git python-dev python3-dev python-numpy python3-numpy python-six python3-six build-essential python-pip python3-pip python-virtualenv swig python-wheel python3-wheel libcurl3-dev libcupti-dev
apt-get install libglib2.0-dev zlib1g-dev
sudo apt-get install librdmacm-dev

5) 如果要GPU支持需要

https://alliseesolutions.wordpress.com/2016/09/08/install-gpu-tensorflow-from-sources-w-ubuntu-16-04-and-cuda-8-0/

A:安裝/更新GPU驅動

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

B:Nvidia Toolkit 8.0 & CudNN

在https://developer.nvidia.com/cuda-toolkit下載對應的版本

sudo sh cuda_8.0.61_375.26_linux.run --override --silent --toolkit
會將cuda安裝到: /usr/local/cuda

C:安裝CudNN

https://developer.nvidia.com/cudnn 下載對應的版本
解壓到 /usr/local/cuda

tar -xzvf cudnn-8.0-linux-x64-v6.0.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

D: 配置環境變量

~/.bashrc 添加

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda

然后使環境變量生效

source ~/.bashrc

二、 TensorFlow 源碼下載、編譯、安裝

1)下載tensorflow 源碼

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

2)配置TensorFlow

到TensorFlow的根目錄執行

./configure

注:出於國情原因下面的一定選N

Do you wish to build TensorFlow with Google Cloud Platform support? [y/N]
Do you wish to build TensorFlow with Amazon S3 File System support? [Y/n]
Do you wish to build TensorFlow with Hadoop File System support? [y/N]

3)編譯安裝

bazel編譯pip 的安裝包,然后通過 pip 安裝

1) bazel編譯

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

2) 生成安裝包

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

2017年 12月 12日 星期二 13:32:22 CST : === Output wheel file is in: /tmp/tensorflow_pkg

3) 安裝

sudo pip install /tmp/tensorflow_pkg/tensorflow-1.4.0-cp27-cp27mu-linux_x86_64.whl

注意: 2)生成安裝包的目錄,tensorflow-1.4.0-cp27-cp27mu-linux_x86_64.whl在=== Output 提示的 /tmp/tensorflow_pkg下

安裝過程會下載一些依賴的包和庫,最后成功提示:

Successfully installed absl-py-0.1.6 backports.weakref-1.0.post1 bleach-1.5.0 enum34-1.1.6 funcsigs-1.0.2 html5lib-0.9999999 markdown-2.6.10 mock-2.0.0 numpy-1.13.3 pbr-3.1.1 tensorf

三、遇到問題

編譯時出現如下錯誤:

ERROR: /home/duanyufei/source/TensorFlow/tensorflow/tensorflow/contrib/gdr/BUILD:52:1: C++ compilation of rule '//tensorflow/contrib/gdr:gdr_memory_manager' failed (Exit 1)
tensorflow/contrib/gdr/gdr_memory_manager.cc:28:27: fatal error: rdma/rdma_cma.h: No such file or directory
compilation terminated.
Target //tensorflow/tools/pip_package:build_pip_package failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 323.279s, Critical Path: 33.69s
FAILED: Build did NOT complete successfully

解決辦法

sudo apt-get install librdmacm-dev

四、測試 hello word!

在終端打開python,運行如下代碼

>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print(sess.run(hello))

結果:
Hello, TensorFlow!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM