如何在Visual Studio 2019中用C++加载TensorFlow预训练模型?
TensorFlow C++ 加载SavedModel配置问题解答
一、Visual Studio 包含与库目录配置
包含目录(C/C++ → 常规 → 附加包含目录)
- TensorFlow源码根目录(即你克隆的
tensorflow/tensorflow的上级目录) - Bazel生成的TensorFlow头文件目录:
bazel-tensorflow/tensorflow - 依赖库头文件目录(均来自Bazel自动下载的依赖,位于
bazel-tensorflow/external下):bazel-tensorflow/external/eigen_archivebazel-tensorflow/external/abslbazel-tensorflow/external/com_google_protobuf/src
库目录(链接器 → 常规 → 附加库目录)
- 添加
bazel-bin/tensorflow目录,该目录包含编译生成的tensorflow.lib
附加依赖项(链接器 → 输入 → 附加依赖项)
- 直接添加
tensorflow.lib
DLL部署
- 将
bazel-bin/tensorflow/tensorflow.dll复制到项目可执行文件的输出目录,或者加入系统PATH环境变量
二、Eigen路径与包含深度错误解决
这两个问题都是路径配置错误导致的:
Eigen/Core找不到:必须使用TensorFlow编译时Bazel同步的Eigen版本,路径为bazel-tensorflow/external/eigen_archive,不能随意添加其他Eigen目录。- 包含深度超过1024:通常是因为重复添加包含目录或添加了递归目录引发循环包含。解决步骤:
- 检查附加包含目录,移除重复或不必要的路径
- 只添加必要的一级目录,避免递归添加整个文件夹(比如不要直接添加
bazel-tensorflow,而是按需添加其子目录) - 清理项目缓存后重新编译
内容的提问来源于stack exchange,提问作者powermew
相关产品推荐
相关产品推荐

