新年快乐大家,
我正在努力解决一个相当愚蠢的gcc包含问题。我试图将我的工作相对包含路径(使用-I
)更改为绝对路径,以便我可以移动源文件,它仍然可以编译。
相对路径(工作):
-I../../../NVIDIA_GPU_Computing_SDK/OpenCL/common/inc -lOpenCL
绝对路径(不工作):
-I~/NVIDIA_GPU_Computing_SDK/OpenCL/common/inc -lOpenCL
那么如何使用主目录中的绝对路径包含头文件?
由于
[更新]
我用$HOME
尝试了-I$HOME/NVIDIA_GPU_Computing_SDK/OpenCL/common/inc
的想法
但是make文件的输出说:
gcc
的 IOME/NVIDIA_GPU_Computing_SDK/OpenCL/common/inc
-lOpenCL -O3 -fno-strict-aliasing -fopenmp -std=c99 -lm -D_GNU_SOURCE -Wall -pedantic foo.c
foo.c:14: fatal error: CL/cl.h: No such file or directory
compilation terminated.
我对这些参数使用make文件会有所不同吗?
答案 0 :(得分:2)
指定完整路径或$ HOME,而不是使用〜作为主目录
答案 1 :(得分:1)
尝试使用$HOME
代替~
。