使用命令行选项包含头文件?
是否可以指定额外的头文件包括从命令行(使用GCC 4 / C + +)?
还是有没有其他方式的文件可以包括除了#include?
背景:我正在试图在我自己的PC上编译一个庞大的代码库。 代码通常是编译在一个集群中的,一个复杂的构build系统(SoftRelTools anybody?),与操作系统交织在一起,这样几乎不可能把它安装在别的地方(几百个makefile和shell脚本,编码path到networking驱动器)。 然而,实际的代码是相当简单的,并且编译得很好,但是缺less很多include(主要包括“ include <vector>
”和“ include <math.h>
”)。 我猜编译系统通常会处理这个问题,但是我必须通过代码并手动添加包含,我宁愿避免。
我find了-include选项。 这是你想要的吗?
– 包括文件
处理文件就好像“#include”文件“”出现在主源文件的第一行。 但是,search文件的第一个目录是预处理程序的工作目录,而不是包含主源文件的目录。 如果在那里没有find,则在正常情况下在“#include”…“”search链的其余部分中search它。
如果给出多个-include选项,则这些文件将按照它们在命令行上出现的顺序包含在内。
从gcc手册:
– 包括文件
处理文件就好像“
#include "file"
”出现在主源文件的第一行。 但是,search文件的第一个目录是预处理程序的工作目录,而不是包含主源文件的目录。 如果在那里没有find,则在正常情况下在“#include "..."
”search链的其余部分中search它。如果给出多个-include选项,则这些文件将按照它们在命令行上出现的顺序包含在内。
根据gcc的文档,命令行开关“-include file”将完成这项工作。