为Tensorflow构建Go绑定时出错

时间:2017-02-11 04:00:49

标签: go tensorflow

我正试图让Tensorflow的Go绑定继续进行。我已经按照repo的QuickStart说明进行操作。

https://github.com/tensorflow/tensorflow/tree/master/tensorflow/go

但是构建命令:

go get github.com/tensorflow/tensorflow/tensorflow/go

因以下错误而失败:

pendragon:src sjc$ go get github.com/tensorflow/tensorflow/tensorflow/go
# github.com/tensorflow/tensorflow/tensorflow/go
ld: library not found for -ltensorflow
clang: error: linker command failed with exit code 1 (use -v to see invocation)
pendragon:src sjc$ 

lib已下载并安装在/ usr / local / lib

$ ls -l libtens*
-r-xr-xr-x  1 root  wheel  107227008  1 Jan  1970 libtensorflow.so

似乎按照说明进行设置。不知道如何向Go构建指示在哪里找到库。其他人都有Go包装器来构建吗?

1 个答案:

答案 0 :(得分:0)

找到了解决方案。

在Linux和OSX上进行构建和测试我需要显式设置库路径。

在Ubuntu VM上,我开始测试build:

match: { name: searchQuery.series }

在我当地的OSX机器上:

~/work$ export LD_LIBRARY_PATH=/usr/local/lib
~/work$ export LIBRARY_PATH=/usr/local/lib
~/work$ go get github.com/tensorflow/tensorflow/tensorflow/go
~/work# go test github.com/tensorflow/tensorflow/tensorflow/go
ok github.com/tensorflow/tensorflow/tensorflow/go   0.210s
~/work$  

因此,即使您已将pendragon:go sjc$ export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/lib pendragon:go sjc$ export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/usr/local/lib pendragon:go sjc$ go get github.com/tensorflow/tensorflow/tensorflow/go pendragon:go sjc$ go test github.com/tensorflow/tensorflow/tensorflow/go ok github.com/tensorflow/tensorflow/tensorflow/go 0.237s 安装到libtensorflow,似乎有关设置这些路径环境变量的说明似乎也适用。