这是一个小问题,我这样的Linux程序新手无法解决。
现在我有一个需要编译的main.cpp程序,有一个
#include "Down.h"
在文件的前面。
实际上,此头文件存在于另一个目录中,该目录位于
../../../include
目录。此外,Down.h所需的一些其他头文件也位于此../../../include目录。
这是问题所在,我用命令
编译main.cppg++ -I /../../../include main.cpp
然而,它提供了大量的错误信息,这意味着这样做是不正确的。
我是否还应该将include声明更改为此声明?
#include "../../../include/DownConvert.h"
请你给我一些建议吗?感谢。
使用g++ -I ../../../include main.cpp
后,我收到以下错误:
$ g++ -I ../../../include main.cpp
In file included from ../../../include/DownConvert.h:98,
from main.cpp:92: ../../../include/ResizeParameters.h:4:22: error:
TypeDefs.h: No such file or directory
In file included from /usr/include/c++/4.4/bits/stl_algo.h:61,
from /usr/include/c++/4.4/algorithm:62,
from ../../../include/H2
答案 0 :(得分:7)
g++ -I /../../../include main.cpp
在-I
之后看到领先的斜线?那是绝对的道路
将其更改为相对路径(如下所示),它将正常工作。
g++ -I ../../../include main.cpp
答案 1 :(得分:0)
g ++ -I ../../../include main.cpp
应该工作
答案 2 :(得分:0)
尝试使用-v选项:
g++ -v -I ../../../include main.cpp
并检查搜索包含文件的目录列表是否包含您的文件夹,并且没有抱怨此文件夹不存在。如果有这种抱怨纠正了你在-I
之后给出的路径