簡體   English   中英

TensorFlow Bazel構建失敗

[英]TensorFlow Bazel build failing

我正在使用bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer使用bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer TensorFlow,按照TensorFlow 從源代碼說明安裝的指示

我收到以下錯誤:

    ERROR: /home/ubuntu/tensorflow/tensorflow/stream_executor/BUILD:5:1: C++ compilation of rule '//tensorflow/stream_executor:stream_e
xecutor' failed: crosstool_wrapper_driver_is_not_gcc failed: error executing command third_party/gpus/crosstool/clang/bin/crosstool
_wrapper_driver_is_not_gcc -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -fPIE -Wall -Wunused-but-set-parameter -Wno-fr
ee-nonheap-object ... (remaining 87 argument(s) skipped): com.google.devtools.build.lib.shell.BadExitStatusException: Process exite
d with status 1.   

tensorflow/stream_executor/cuda/cuda_dnn.cc: In function 'cudnnConvolutionFwdAlgo_t perftools::gputools::cuda::{anonymous}::ToConvF
orwardAlgo(perftools::gputools::dnn::AlgorithmType)':                                                                              
tensorflow/stream_executor/cuda/cuda_dnn.cc:269:10: error: 'CUDNN_CONVOLUTION_FWD_ALGO_FFT' was not declared in this scope         
     case CUDNN_CONVOLUTION_FWD_ALGO_FFT:  

...

堆棧:運行Ubuntu 14.04.2的EC2 g2.8xlarge機器。 Bazel版本0.1.5(安裝時帶有bazel-0.1.5-jdk7-installer-linux-x86_64.sh )。

我嘗試過Bazel 0.1.4和0.2.3,我得到了同樣的錯誤。

我有同樣的問題在Ubuntu 16.04中構建tensorflow。

首先確保您使用的是gcc版本<= 4.8

在我的情況下,我不得不安裝它:

對於gcc

sudo apt-get install gcc-4.8
sudo update-alternatives --remove-all gcc
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 10

對於g ++

sudo apt-get install g++-4.8
sudo update-alternatives --remove-all g++
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 10

一旦擁有正確版本的gcc和g ++,我就必須編輯CROSSTOOL文件,如下所示:

gedit tensorflow_sources_folder/third_party/gpus/crosstool/CROSSTOOL

搜索此特定行的每個發生:

tool_path { name: "gcc" path: "clang/bin/crosstool_wrapper_driver_is_not_gcc" }

並在其正上方插入以下行:

cxx_flag: "-D_FORCE_INLINES"

所以結果必須是:

cxx_flag: "-D_FORCE_INLINES"
tool_path { name: "gcc" path: "clang/bin/crosstool_wrapper_driver_is_not_gcc" }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM