Qt中的预编译头文件避免重新编译修改后的头文件

时间:2014-03-25 09:55:59

标签: c++ qt

使用pre-compiled headers in Qt,它可以工作并缩短项目的编译时间。 我将常见的C ++和Qt头文件放在名为all.h的文件中,以避免在每个翻译单元中重新编译它们:

#ifndef _ALL_H_
#define _ALL_H_

#include <cstdlib>
#include <cmath>
.
.
#include <QGlobal>
#include <QVector>
.
.
#endif

另外我有一些头文件,它们经常更改(我不需要它们进行预编译),但qmake不会重新编译这些头文件,我必须重建整个项目彻底。

有什么问题?如何修改自己的头文件并调用编译来重新编译它们?

2 个答案:

答案 0 :(得分:1)

尝试将这些行添加到.pro文件中,我将其称为qmake中的错误(可能):

DEPENDPATH += path_to_source
INCLUDEPATH += path_to_source

例如:

DEPENDPATH += .
INCLUDEPATH += .

答案 1 :(得分:0)

qmake,就像任何make实用程序需要知道应用程序的来源是什么一样。 .cpp源代码很容易理解,但需要弄清楚.h源代码。此外,现代make实用程序想知道哪些头文件影响哪些翻译单元,因此他们只能重新编译特定的目标文件。