我在 Qt 项目上使用预编译头文件来加快编译时间。我正在使用 Qt 4.6.2 。当我使用 macx-g++(意思是 g++ 编译器)编译项目时,它不会自动为每个标头包含 stdafx.h。在 xcode 下编译时,它将起作用。我正在使用 PRECOMPILED_HEADER qmake 常量指向我的 stdafx.h。
那么这是g ++的限制吗?还是有解决方案/解决方法?
谢谢你的帮助,鲍里斯——
我在 Qt 项目上使用预编译头文件来加快编译时间。我正在使用 Qt 4.6.2 。当我使用 macx-g++(意思是 g++ 编译器)编译项目时,它不会自动为每个标头包含 stdafx.h。在 xcode 下编译时,它将起作用。我正在使用 PRECOMPILED_HEADER qmake 常量指向我的 stdafx.h。
那么这是g ++的限制吗?还是有解决方案/解决方法?
谢谢你的帮助,鲍里斯——
如果某些条件不满足,有时 gcc 会忽略预编译的标头。请参阅:gcc 文档页面。
像任何其他文件一样编译头文件,但将输出放在后缀为 .gch 的文件中:
g++ -c stdafx.h -o stdafx.h.gch
g++ main.cpp
./main.out