【发布时间】:2015-09-09 15:47:12
【问题描述】:
我的单个 C++ 文件包含来自各种库(如 MKL 和模板库)的许多头文件。由于包含许多语句,每次编译这个文件都需要很长时间。我尝试将包含语句分离到一个文件中,从中创建一个目标文件,并在主文件的编译过程中将其链接起来,但似乎编译器无法识别定义的对象和函数的定义头文件。 那么,如何节省这些头文件的编译时间呢?
【问题讨论】:
-
您使用哪个编译器/平台?
-
如果您的编译器支持预编译头文件,使用此功能可以帮助减少每次构建代码时重新编译头文件的需要。
-
我在linux机器上使用intel编译器,它支持预编译吗?我也无法安装 ccache 实用程序,因为我没有 root 访问权限。
-
每次都需要编译文件吗?依赖的头文件之一是否发生了变化?在我的店里,我们只在晚上通过自动服务器进行重建。开发人员通常只编译发生变化或其中一个依赖项发生变化的文件。
-
@tarek:你不需要root权限来安装
ccache;你可以编译它并配置它在你的`$HOME中运行
标签: c++ compilation