我在ubuntu系统下使用cmake进行编译的时候,报错fatal error: tensorflow/core/framework/op_kernel.h: 没有那个文件或目录,如下所示:
fatal error: tensorflow/core/framework/op_kernel.h: 没有那个文件或目录
#include "tensorflow/core/framework/op_kernel.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
CMake Error at lmbspecialops_generated_warp2d_cuda.cu.o.Release.cmake:220 (message):
Error generating
看样子是因为没有找到tensorflow下的一个文件,可是我明明已经在当前环境下安装好tensorflow了。于是,我locate了一下这个文件(终端执行命令locate op_kernel.h
),找到了这个文件,它的路径是:/home/jianping/anaconda3/envs/demon-env/lib/python3.5/site-packages/tensorflow/include/tensorflow/core/framework/op_kernel.h
。那么我们要做的就是告诉cmake,这个文件的路径是啥。也就是,在build文件所在的这级目录下,打开CMakeLists.txt文件,然后在里面添加该include路径(使用include_directories:include_directories(/home/jianping/anaconda3/envs/demon-env/lib/python3.5/site-packages/tensorflow/include)
),添加好后如下图所示:
保存后,再次camke ..
,然后make
,该错误就解决了!