2017-03-17 89 views
0

我想在我的Mac OSx Yosemite(10.10.5)上構建tensorflow源。我運行此命令後Tensorflow編譯錯誤與MacOS上的最新tensorflow源

bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package 

我得到這個錯誤規則

C++編譯 '// tensorflow /核心:candidate_sampling_ops_op_lib' 失敗:cc_wrapper.sh失敗:錯誤執行命令外部/ local_config_cc/cc_wrapper .sh -U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -fcolor-diagnostics -fno-omit -frame-pointer -g0 -O2'-D_FORTIFY_SOURCE = 1'-DNDEBUG ...(其餘95參數( s)跳過):com.google.devtools.build.lib.shell.BadExitStatusException:進程退出狀態爲1. tensorflow/core/ops/candidate_sampling_ops.cc:392:7:錯誤:當lambda表達式未明確指定返回類型時,返回類型'tensorflow :: Status'必須匹配之前的返回類型'const :: tensorflow :: Status' return Status :: OK(); 'tensorflow::(在tensorflow /核心/ ops/candidate_sampling_ops.cc:376:17處的lambda)'到''tensorflow ::無法可行的轉換爲tensorflow ::核心/ ops/candidate_sampling_ops.cc:376:17:錯誤: ^ 狀態(*)(shape_inference :: InferenceContext )」 .SetShapeFn([](InferenceContext C){

什麼可我是做錯了什麼?

+0

已經嘗試刪除並重新安裝tensorflow?如果是這樣的話:你使用的是哪個版本? – dv3

+0

是的。我再次重新下載。我按照說明https://www.tensorflow.org/install/install_sources 和did(這意味着最新版本的張量流) git clone https://github.com/tensorflow/tensorflow –

回答

0

tensorflow的最新版本是不是可編譯/於工作mac os x。

這是我的腳本,可以在mac-osx sierra i7上運行mac-osx sierra tensorflow 1.0上的tensorflow。仍在努力獲得SSE等,以正確編譯和更高版本的tensorflow - 但無論如何。 Tensorflow與蘋果電腦不太一樣 - 但DL4J是!

更新: 您不應該從優勝美地更新。我能夠得到r1.3與SSE和AVX編譯!因此,撰寫本文時的「最新版本」已知問題 - r1.3是最新的穩定版本。我已經包含了腳本來做一個適當的構建下面,但也包括http://www.josephmiguel.com/building-tensorflow-1-3-from-source-on-mac-osx-sierra-macbook-pro-i7-with-sse-and-avx/關於此事的所有細節。

one time install 

install anaconda3 pkg # manually download this and install the package 
conda update conda 
conda create -n dl python=3.6 anaconda 
source activate dl 

cd/
brew install bazel 
pip install six numpy wheel 
pip install –upgrade https://storage.googleapis.com/tensorflow/mac/cpu/protobuf-3.1.0-cp35-none-macosx_10_11_x86_64.whl 

sudo -i 
cd/
rm -rf tensorflow # if rerunning the script 
cd/
git clone https://github.com/tensorflow/tensorflow 


Step 1 

cd /tensorflow 
git checkout r1.3 -f 
cd/
chmod -R 777 tensorflow 
cd /tensorflow 
./configure # accept all default settings 


Step 2 

// https://stackoverflow.com/questions/41293077/how-to-compile-tensorflow-with-sse4-2-and-avx-instructions 
bazel build –config=opt –copt=-mavx –copt=-mavx2 –copt=-mfma //tensorflow/tools/pip_package:build_pip_package 


Step 3 

bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg 
pip install /tmp/tensorflow_pkg/tensorflow-1.0.1-cp36-cp36m-macosx_10_7_x86_64.whl 


Step 4 

cd ~ 
ipython 


Step 5 

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


Step 6 

pip uninstall /tmp/tensorflow_pkg/tensorflow-1.0.1-cp36-cp36m-macosx_10_7_x86_64.whl