在Linux下我是用的是QT Creator编写的C++程序,但是我发现在默认的情况下,如果需要编译的代码文件较多的时候QT Creator的构建速度就比较尴尬了,例如我这里的一个工程,在QT Creator默认的设置下,编译需要3分钟多的时间,如图所示。
可以想象,如果工程更大的时候,这是一个多么尴尬的事情。我们知道QT Creator只是一个代码处理的工具,而最终的编译还是要交给make、gcc、g++来操作的,所以编译慢QT Creator并不需要背锅。这里给出2个设置方法,你可以大幅度的提升你的代码编译速度。
使用ccache
关于ccache的介绍我就不介绍了,长话短说直接看使用。
首先安装ccache,例如在Ubuntu下,使用命令(已经安装过了就不用安装了)
apt-get install ccache
然后找到你的QT 工程中的xxx.pro文件,在其中增加一句
QMAKE_CXX = ccache g++
如图所示:
如果你使用的是MPI,那么这里将g++替换为mpicxx就行了
设置make -j 多任务设置
如果你使用过命令行对QT工程进行编译,那么你应该知道QT Creator的编译也是使用make指令,make指令是支持多任务执行的,默认状态下make只会同时进行1个任务。如果要开启多任务的执行,需要为make 增加一个 -j的参数(使用make -help可以查看帮助),例如 make -j 4 就是表示在同一时间可以并行编译的任务数为4个,如果直接使用make -j 而不指定任务数,那么make将会不限制任务的个数,具体的任务数配置还是参考一下你的CPU核心数吧。
OK,我们来配置QT Creator吧。打开你的QT工程,在左侧找到 项目,在项目的构建和运行下找到构建步骤,例如我这里用的参数-j 4,如图所示。
设置完成之后,回到你的工程,重新构建一下试试看吧,速度是不是比之前快了很多吧,我的工程已经由之前的3分多变成了8秒~~~2333