添加许多-isystem include指令会显着减慢编译过程吗?

时间:2016-01-27 11:14:14

标签: c++ compilation clang

对于我们的软件项目,我们有大约15个第三方库依赖项。我们使用-isystem include伪指令来抑制这些第三方库中的警告。

我们的软件项目包含10多个可执行文件和库,每个可执行文件和库都依赖于第三方库的子集。我们用mac上的clang编译。

在我们的构建系统中禁用所有项目的所有第三方警告的简单方法是在所有项目中包含-isystem的所有第三方库。

另一种方法是为每个项目单独定义-isystem指令。这是设置的更多工作,并将炸毁所有项目文件的配置,但仅包括实际使用的第三方库。

我更愿意选择第一个选项,因为它没有太多工作,但我不确定这是否会显着减慢编译过程?

1 个答案:

答案 0 :(得分:0)

此标志将仅减慢标准标题搜索速度,因为在找到每个标准标题之前,它还将在您的目录中搜索它。因此,它取决于您添加的目录数量以及您使用的标准标头数量。对于每个标准标题,影响将是以下的总和:

time ls YOUR_DIR >> /dev/null 2>&1

为每个添加的目录。