我有一个大项目,需要大约半个小时才能编译。
该项目由许多模块组成,但是有一个包含所有模块之间共享数据的头文件。
目前,我正在对此头文件进行重大更改,每次我尝试编译并运行项目以确保一切正常时,需要花费大量时间进行编译(因为此头文件包含在所有模块中。)
无论如何都要克服这个大的编译时间吗?
答案 0 :(得分:1)
考虑不要像那样构建你的项目。
您的文件可能包含许多字符串,整数等。将它们放入单个.c
文件中,并提供读取它们的函数,或者在标题中使用extern int foo;
等。
如果你不能这样做:
make -jN
将运行最多make
个进程的并行N
(两倍的CPU核心似乎运行良好)。distcc
。