我按照教程:TensorFlow AOT compilation
根据步骤1和2,我编译了子图并生成了头文件(test_graph_tfmatmul.h
)和对象(test_graph_tfmatmul.o
)文件;
根据步骤3,我使用示例代码(名为my_code.cc
)来调用子图;
根据步骤4,我将代码段cc_binary
添加到现有的BUILD
文件(//tensorflow/compiler/aot/tests/BUILD
),并尝试使用以下命令创建最终二进制文件:
bazel build //tensorflow/compiler/aot/tests:my_binary
但我收到以下错误:
undeclared inclusion(s) in rule '//tensorflow/compiler/aot/tests:my_binary':
this rule is missing dependency declarations for the following files included by 'tensorflow/compiler/aot/tests/tfcompile_test.cc':
'/home/tensorFlow_src/tensorflow/tensorflow/compiler/aot/tests/test_graph_tfmatmul.h'
欢迎任何建议。感谢。
答案 0 :(得分:1)
最后通过使用tf_library
在步骤2中构建cc_library
来解决此问题,而不是直接使用tfcompile
。即,tf_library
将运行tfcompile
以生成标头和目标文件。
有关详细信息,请参阅https://github.com/tensorflow/tensorflow/issues/13482。
答案 1 :(得分:0)
Bazel抱怨tfcompile_test.cc
你#include "tensorflow/compiler/aot/tests/test_graph_tfmatmul.h"
,但没有依赖提供在BUILD文件中声明的标头。您是否已将":test_graph_tfmatmul"
添加到my_binary
的代码中?