所以我安装了Tensorflow as described here。 One of the answers提到该项目必须位于克隆的本地TensorFlow仓库中。有没有办法让项目在回购之外?
答案 0 :(得分:0)
据我所知,没有官方方法可以在TF仓库之外构建代码。但是,您可以使用tensorflow_cc项目,为您构建和安装TF C ++库,并提供方便的CMake目标以及所有必需的标头和链接参数。
答案 1 :(得分:0)
是的,您只需要执行以下操作:
克隆tensorflow存储库
./configure
到你的链接(启用CUDA等)
使用bazel build
版本//tensorflow:libtensorflow.so
和//tensorflow:libtensorflow_cc.so
。
创建一个您自己的项目,在之外的存储库并链接到您刚编译的.so
:s,您需要在编译/链接时使用以下选项:
-I/path/to/repo/tensorflow
-L/path/to/repo/tensorflow/bazel-bin/tensorflow
-ltensorflow_framework -ltensorflow_cc
您的.hpp
和.cpp
文件现在可以使用tensorflow::Session
和其他类,包括相应的标头文件:
#include "tensorflow/core/public/session.h"
#include "tensorflow/cc/ops/standard_ops.h"
您可能还需要(对于protobuf编译器生成的标头protoc
):
-I/path/to/repo/tensorflow/bazel-genfiles/
以及依赖的图书馆(例如它抱怨nsync
):
-I/path/to/repo/tensorflow/bazel-tensorflow/external/nsync/public
希望这有用。
答案 2 :(得分:0)
我已经使用Cmake和Visual Studio 2015成功构建了tensorflow-gpu dyanmic库,现在我可以将项目放在TF仓库之外了。
1.git clone -b r1.7 --single-branch https://github.com/tensorflow/tensorflow.git
2.使用共享库和enable-gpu
选择并选择选项3.build tensorflow.dll和tensorflow.lib与visual studio 2015
构建过程中会出现一些错误,但很容易修复。 如果您希望了解详细信息,请发表评论。