我有一个项目(一个库),它被细分为几个包含代码的目录.我想在项目的根目录中使用g ++搜索头文件,因此我可以避免跨多个源文件的相同头文件的不同包含路径.
主要是,该root/目录有子目录A/,B/并且C/,所有这些都.hpp和.cpp里面的文件.如果A中的某个源文件想包含file.hpp在B中,那么就必须这样做:#include "../B/file.hpp".对于C中的另一个源文件也是如此.但是,如果A本身具有需要文件的子目录file.hpp,那么它将是不一致的并且如果我决定移动文件会导致错误(因为包含路径将是"../../B/file.hpp").
此外,这还需要在其他项目中工作,这些项目位于其他项目之外root/.我已经知道有一个选项可以手动将我的所有头文件复制到默认搜索目录中,但我想按照我描述的方式执行此操作.
编辑:使用该库的所有程序必须仅使用g++ prog.cpp lib.a -o prog.这意味着永久设置g ++的包含路径!