包括从其他目录的C++不起作用

问题描述:

是的,我知道这里有100000000这样的问题。我花了2个小时潜伏着,发现我做错了什么。这是我的项目目录树:包括从其他目录的C++不起作用

enter image description here

main.cpp启动与此:

#include <iostream> 
#include "XD.hpp" 

我试过很多其他组合(lib/XD.hpp<XD>不工作为好),我即使做了-I/home/frynio/Desktop/projects/sdizo1/lib,但它仍然不起作用。你们看到我在这里做错了什么吗?

我知道这将是大规模的低投票,但我宁愿花时间在我的项目上工作,而不是试图找出这个东西。

+4

怎么样'-I。/ lib'? – P0W

+0

有时这样的东西也会发生在复制粘贴上,并且意外地包括一些奇怪的不可见字符。尝试再次输入#include“XD.hpp”行。 – Peter

+2

尝试使用-v标志运行gcc。它应该告诉你它在哪里寻找标题。 –

它应该是这个样子

#include "../lib/XD.hpp" 
+0

那只是使用相对路径,对吧?我的意思是'..'让我到以前的目录? – FrynioS

+0

我认为更好的解决方案是由P0W提供的:使用'-I。/ lib'。如果包含文件移动到其他位置,则必须更改包含“XD.hpp”的所有文件。使用'-I'选项只需要更改makefile。 –