错误很明显:
ld:找不到用于-ltensorflow的库
运行时,
go test您将调用go编译器来编译所需的库,测试文件,然后执行它们。
当编译使用“非纯” go库的程序时,必须使编译器(和链接程序)知道该库。
在编译阶段,编译器也在环境变量中列出的路径中查找库(也):
LIBRARY_PATH在OS X和Linux上。
因此,您必须在此变量中添加已编译库的位置。
例如,我有:
TFGOLIB="${GOPATH}/src/github.com/tensorflow/tensorflow/bazel-bin/tensorflow"export LIBRARY_PATH="${TFGOLIB}:${LIBRARY_PATH}"相反,在运行时,操作系统会寻找该库以执行动态链接。
因此,您必须将此另一个变量(
LD_LIBRARY_PATH在Linux和
DYLD_LIBRARY_PATHOS X上)设置为相同位置。
此外,我建议您也将CUDA库路径添加到此变量,以使其在运行时可用。
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/cuda/lib64:/opt/cuda/extras/CUPTI/lib64:/opt/cudnn5.1/cuda/lib64:${TFGOLIB}"


