未找到链接到头文件的头文件。
我对Nvidia的OpenCl / Cuda框架有疑问,但我认为这是一个gcc
链接问题。
opencl_hello_world.c
示例文件使用以下头文件:
#include "../OpenCL/common/inc/CL/opencl.h"
使用这些头文件的opencl.h
:
#include #include #include #include
所以所有头文件都在同一个文件夹中。
当我用gcc opencl_hello_world.c -std=c99 -lOpenCL
编译时,我收到以下错误消息:
error: ../OpenCL/common/inc/CL/cl.h: No such file or directory error: ../OpenCL/common/inc/CL/cl_gl.h: No such file or directory ...
即使cl.h
和其他头文件位于此文件夹中。
搜索过SO之后,我将opencl.h
的包含更改为
#include "cl.h" #include "cl_gl.h"
我在这里阅读: gcc无法找到包含的标题 。
但是搞乱框架头文件似乎不怎么样? 处理这个问题的正确方法是什么?
您正在使用#include“”表单和#include <>,它们不会在相同的路径中搜索。 “”是项目的本地,并且指定给gcc的-i命令行,<>是-I到gcc指定的“系统”路径。
您可能需要在gcc的命令行中使用-Ipath / to / includes设置包含路径。