Tensorflow 缺少静态库中的 c_api

Posted

技术标签:

【中文标题】Tensorflow 缺少静态库中的 c_api【英文标题】:Tensorflow missing c_api from static library 【发布时间】:2018-04-09 14:58:24 【问题描述】:

我在https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/makefile 中编译了静态张量流库。我可以使用 C++ api 加载和使用我的图表。但是当我尝试切换到 c_api 时,我得到了一堆对 TF_* 的未定义引用。

如何编译带有C接口的静态tensorflow库(tensorflow/c/c_api.cc)?

我尝试将此源文件添加到 tensorflow/contrib/makefile/Makefile,但它也会产生一组未定义的引用。

【问题讨论】:

链接到共享库(使用 bazel 构建)与 c_api 配合得很好,但我想使用静态库。 【参考方案1】:

好的,解决方案很简单: 1)将“tensorflow/c/c_api.cc”作为tensorflow/contrib/makefile/Makefile b/tensorflow/contrib/makefile/Makefile中的来源之一 2) 将“#define __android__ 1”放在 tensorflow/c/c_api.cc 的顶部。这将禁用对未定义引用的调用。

【讨论】:

以上是关于Tensorflow 缺少静态库中的 c_api的主要内容,如果未能解决你的问题,请参考以下文章

静态库中的对话框资源

静态库中的 VC++ 资源

静态库中的 MagicalRecord:如何加载数据模型?

张量流库中的启动问题

如何理解 TensorFlow 中的静态形状和动态形状?

静态库中的外部指针为空,当不是静态库时工作正常