我正在做一个C++项目,需要使用Makefile编译。这个项目需要各种源代码和头文件,我决定将它们组织在项目内的不同目录中。我的情况看起来像这样(假例子):
在main.cpp文件中,我尝试使用以下行包含a_bis.hpp:
#include "a/a_bis/a_bis.hpp"
编译时,我得到错误消息a/a_bis/a_bis.hpp:没有这样的文件或目录。根据我的理解,我需要在编译命令中添加-I标志。如下所示:
g++ -Wall -Wextra -Werror -I"D:\C++\test" main.cpp
路径是正确的,但我总是得到相同的错误。我尝试了其他语法(-I/D/C++/test,-I“D:\C++\test”)。在线查找时,我一遍又一遍地看到相同的语法,我已经尝试过了。
有人知道可能导致此问题的原因吗?
这个项目是一个学校项目,我被禁止使用任何cmake工具。感谢任何帮助!
1条答案
按热度按时间yqyhoc1h1#
感谢您的帮助,我发现了这个问题。我使用的是Windows系统的常规路径,但我使用的是WSL终端执行make命令。在Powershell终端执行make命令时,使用MadScientist评论(
-ID:/C++/test
)指出的语法似乎没有问题。