tensorflowソースコードのコンパイルインストールおよびいくつかのエラー

5314 ワード

tensorflowソースコードコンパイルubuntuが持参したPythonにインストールするのが便利で、以下の場所でデフォルトできます(私は持参したPythonにインストールしました)
他の配置は疲れていません.率直に言ってください.
bazelは0.5.2をインストールします.やはり最新のをインストールしないでください.
sudo ./configureはcudaのほか、cudnn関連のオプションは自分で選択する以外(cudaをインストールする場所が人によって異なるかもしれません)、すべてデフォルトでenterを押すと正しいです
これは私のです.
saners@saners:~/tensorflow$ sudo ./configure [sudo] password for saners:  WARNING: Running Bazel server needs to be killed, because the startup options are different. You have bazel 0.5.2 installed. Please specify the location of python. [Default is/usr/bin/python]:  Found possible Python library paths:/usr/local/lib/python2.7/dist-packages/usr/lib/python2.7/dist-packages Please input the desired Python library path to use.  Default is/usr/local/lib/python2.7/dist-packages Do you wish to build TensorFlow with jemalloc as malloc support? [Y/n]:  jemalloc as malloc support will be enabled for TensorFlow. Do you wish to build TensorFlow with Google Cloud Platform support? [y/N]:  No Google Cloud Platform support will be enabled for TensorFlow. Do you wish to build TensorFlow with Hadoop File System support? [y/N]:  No Hadoop File System support will be enabled for TensorFlow. Do you wish to build TensorFlow with XLA JIT support? [y/N]:  No XLA JIT support will be enabled for TensorFlow. Do you wish to build TensorFlow with GDR support? [y/N]:  No GDR support will be enabled for TensorFlow. Do you wish to build TensorFlow with VERBS support? [y/N]:  No VERBS support will be enabled for TensorFlow. Do you wish to build TensorFlow with OpenCL support? [y/N]:  No OpenCL support will be enabled for TensorFlow. Do you wish to build TensorFlow with CUDA support? [y/N]: y CUDA support will be enabled for TensorFlow. Please specify the CUDA SDK version you want to use, e.g. 7.0. [Leave empty to default to CUDA 8.0]:  Please specify the location where CUDA 8.0 toolkit is installed. Refer to README.md for more details. [Default is/usr/local/cuda]:  "Please specify the cuDNN version you want to use. [Leave empty to default to cuDNN 6.0]: 5 Please specify the location where cuDNN 5 library is installed. Refer to README.md for more details. [Default is/usr/local/cuda]: Please specify a list of comma-separated Cuda compute capabilities you want to build with. You can find the compute capability of your device at: https://developer.nvidia.com/cuda-gpus. Please note that each additional compute capability significantly increases your build time and binary size. [Default is: 5.0] Do you want to use clang as CUDA compiler? [y/N]:  nvcc will be used as CUDA compiler. Please specify which gcc should be used by nvcc as the host compiler. [Default is/usr/bin/gcc]:  Do you wish to build TensorFlow with MPI support? [y/N]:  No MPI support will be enabled for TensorFlow. Please specify optimization flags to use during compilation when bazel option "--config=opt"is specified [Default is -march=native]:  Add "--config=mkl"to your bazel command to build with MKL support. Please note that MKL on MacOS or windows is still not supported. If you would like to use a local MKL instead of downloading, please set the environment variable "TF_MKL_ROOT"every time before build. Configuration finished
説明:cudnnが自分のバージョンを書くことを覚えていて、私の使ったのは5.1で、だから私のこの問題は5を書きました
Please specify the location where CUDA 8.0 toolkit is installed. Refer to README.md for more details. [Default is/usr/local/cuda]:  "Please specify the cuDNN version you want to use. [Leave empty to default to cuDNN 6.0]: 5
上の問題がなければ、次のコマンドを実行します.
bazel build -c opt --config=cuda  //tensorflow/tools/pip_package:build_pip_package
  • 1


  • bazel-bin/tensorflow/tools/pip_package/build_pip_package/tmp/tensorlflow_pkg
    (以上の3つのコマンドはtensorflowルートディレクトリコンパイルで実行されます)
    cd//tmp/tensorflow_pkg(端末を開けば実行可能)
    sudo pip install tensorflow_xxx.whl(自分で生成したwhlファイル名に置き換えます)
    実行後Python import tensorflowテストを開く
    最初の質問:
    ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory Failed to load the native TensorFlow runtime.
    解決方法:開く.bashrc末尾export LD_を追加LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64/
    それでもだめなら、端末sudo vi/etc/environmentを開いてみましょう.つまりenvironmentファイルを開いて入力してみましょう.
    LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/include:/usr/local/cuda/include:
    $LD_LIBRARY_PATH
    そしてコマンドライン:source~/.bashrc(私のtensorflowはhomeディレクトリの下に置いて、ctrl+hは隠した.bashrcを開くことができます.
    またはコマンドラインsudo vi.bashrcは編集を開くのが面倒です).
    2番目の質問:ImportError:No module named enum
    解決方法:sudo pip install enum
    3つ目の質問:ImportError:cannot import name pywrap_tensorflowというか「__doc_」can read-onlyなんて覚えてない
    この2つの問題は、私がimport tensorflow as tfとimport tensorflowを入力してそれぞれ現れたので、1つでもいいです.
    この問題に遭遇して本当に運が悪くてたまらない...数回もいろいろな方法を試してみましたが、tensorflowディレクトリの下でpythonを開かずにディレクトリを変えることが最も認められています.
    もう一つはsixを再インストールすることですが、この問題は解決できません.
    私は誤ってぶつかってjupyterをインストールして、意外にもできることを思い付いて、sudo pip install jupyter
    インストールが完了したら、コマンドラインにjupyter notebookを入力してjupyterツールでimport tensorflowを試してみます.
    jupyterをインストールするいくつかの依存パッケージもちょうど私のこの問題に欠けていると思います.この解決方法が行き詰まった友达に助けてくれることを望んでいます.