如何使用GCC选项-iprefix和-iwithprefix? 我有一个C++应用程序,它被分成模块。每个模块的目录结构如下所示: module_a/ export/ <-- module_a public interface src/ <-- module_a private source test/ src/ <-- unittests for module_a

如何使用GCC选项-iprefix和-iwithprefix? 我有一个C++应用程序,它被分成模块。每个模块的目录结构如下所示: module_a/ export/ <-- module_a public interface src/ <-- module_a private source test/ src/ <-- unittests for module_a,c++,gcc,C++,Gcc,但正如你所看到的,它不起作用。我应该如何使用-iprefix和-iwithprefix 还有,有人能为我的问题找到另一个解决方案吗?我有点担心IDE和其他编译器可能不理解-iprefix和-iwithprefix,所以也欢迎任何其他解决方案 编辑:在发布这个问题后,我立即意识到也许-iprefix foo/-iwithprefix bar只是一种奇特的书写-I foo/bar的方式。然而,我测试了它,我仍然没有让它工作。因此,如果有人能够解释这些选项是如何工作的,即使它们不会帮助我解决我的问题,

但正如你所看到的,它不起作用。我应该如何使用-iprefix和-iwithprefix

还有,有人能为我的问题找到另一个解决方案吗?我有点担心IDE和其他编译器可能不理解-iprefix和-iwithprefix,所以也欢迎任何其他解决方案

编辑:在发布这个问题后,我立即意识到也许
-iprefix foo/-iwithprefix bar
只是一种奇特的书写
-I foo/bar
的方式。然而,我测试了它,我仍然没有让它工作。因此,如果有人能够解释这些选项是如何工作的,即使它们不会帮助我解决我的问题,那还是很好的

$ find -type f
./src
./src/main.cc
./export
./export/bar.h

$ g++ -iprefix foo/ -iwithprefix export/ src/main.cc
src/main.cc:1:10: fatal error: foo/bar.h: No such file or directory
    1 | #include "foo/bar.h"
      |          ^~~~~~~~~~~
compilation terminated.

$ gcc --version
gcc (Debian 9.2.1-17) 9.2.1 20191102