添加许多 -isystem include 指令是否会显著减慢编译过程
Does adding many -isystem include directives slow down the compilation process significantly?
对于我们的软件项目,我们有大约 15 个第三方库依赖项。我们使用 -isystem include 指令禁止显示这些第三方库中的警告。
我们的软件项目由 10 多个可执行文件和库组成,每个可执行文件和库都依赖于第三方库的子集。我们在 mac 上使用 clang 进行编译。
禁用构建系统中所有项目的所有第三方警告的一种简单方法是使用 -isystem 在所有项目中包含所有第三方库。
另一种方法是为每个项目单独定义 -isystem 指令。这是更多的设置工作,并且会破坏所有项目文件的配置,但仅包含实际使用的第三方库。
我更喜欢使用第一个选项,因为它没有太多工作,但我不确定这是否会显着减慢编译过程?
此标志只会减慢标准标头的搜索速度,因为在找到每个标准标头之前,它还会在您的目录中搜索它。因此,这取决于您添加多少个这样的目录以及您使用多少标准标头。对于每个标准标头,影响将是以下各项的总和:
time ls YOUR_DIR >> /dev/null 2>&1
对于您添加的每个目录。
相关文章:
- clang 插件:在编译过程中修改 AST
- C++ 在编译过程中 strtok 函数 Eclipse 说没有在范围内声明?
- 运行程序时找不到共享对象库,但在编译过程中链接了它
- 为什么在编译过程中尽管有 -I(破折号大写 i)标志,但仍会出现未定义的引用错误?
- 如何在编译过程中输出C 类型信息
- 如何指示emscripten在编译过程中应在哪里找到源文件
- 编译过程中有许多错误opencv_contrib
- 在编译过程中组成一系列字符串
- C++头文件和编译过程
- 在编译过程中,琐碎的(没有效果的)代码什么时候会被删除
- C++ 'stod()'不起作用,'strtod()'编译过程中抛出错误
- C++;编译过程中的警告"enabled by default"是什么意思?
- 如何在编译过程中实现功能单元测试
- 在c++编译过程中,私有访问和公共访问是如何工作的
- Qt的编译过程
- 如何确保在C++编译过程中,参数将被视为常量
- 如何使用"python setup.py build"解决C++/C编译过程中的"conflicting types"错误?
- scons - 在编译过程后删除一些构建的文件
- 添加许多 -isystem include 指令是否会显著减慢编译过程
- 如何在编译过程中编辑可执行文件,而不更改其源代码