如何在GCC或clang搜索路径中包含特定的一个包含文件?

时间:2016-03-24 14:27:39

标签: gcc makefile clang

我有大量的C源代码,其中包含一个系统头文件,如:

#include <sys_header.h>

我还有一个库(让我们称之为better_lib),这个特定的标题对我的代码更有效,但是这个库的文件夹中还有很多其他文件。我想使用我的C源的所有常规包含,但此文件只能在better_lib中使用。我确信这种组合效果很好,但问题是:

如何使用sys_header.h中的GCC使用better_lib/include并使用标准位置中的所有其他内容(可能是<string.h><math.h>等)?如果我使用-I选项,我将覆盖所有标准标头,这是不可行的。如果我使用-include选项,我会为所有源文件包含该文件,而不仅仅是那些实际需要它的文件。由于它的源代码行超过了20000,因此编译速度会比我容忍的速度慢。

我无法控制better_lib/include文件夹,它会不时更新,除了我需要的文件外,我无法删除所有文件。我也无法创建新的包含目录或将我需要的标题移动/符号链接到另一个位置。我需要一个全局添加到CFLAGS的标记,它将像-I一样工作,但只能在文件级别使用。有吗?

0 个答案:

没有答案
相关问题