用于Qt的Visual Studio 2005自定义构建

时间:2012-08-14 11:04:46

标签: visual-studio qt visual-c++

我在使用Q_OBJECT的每个头文件的自定义构建属性中有以下内容:

Command Line: $(THIRDPARTY_DIR)\qt\4.7.0\win32-vc10\bin\moc.exe $(InputFileName) -o moc\$(ConfigurationName)\moc_$(InputName).cpp
Description: ################### moc'ing $(InputFileName)
Outputs: moc\$(ConfigurationName)\moc_$(InputName).cpp

这会生成必要的moc文件。我现在想要视觉工作室编译并将它们链接到我的其他源文件。现在我正在使用 任何文件中的#include "moc\{Release OR Debug}\moc_Whatever.cpp"#语句都强制编译和链接。显然我必须根据调试或发布版本不断更改我的#include(我无法在上面的moc文件生成过程中丢弃$(ConfiguarationName))。另外,我不喜欢在源文件中编写此#include的想法,仅用于编译和链接。

在属性中是否有任何构建步骤我可以提及将来生成哪些文件,并在它们可用时编译和链接它们(VS2005)?

(我现在不能使用QtPlugin)

1 个答案:

答案 0 :(得分:0)

您只需将这些文件添加到项目中,我的项目结构通常如下所示(在Visual Studio Solution Explorer中):

  Solution
    |
    +- Project1
          |
          +- Generated Files
          +- Header Files
          +- Source Files

在生成的文件中,我包括对两者的引用,Debug和Release moc_xxx.cpp和qrc_xxx.cpp文件。对于Debug文件,您需要为Release引用设置“Exclude from Build”为true,反之亦然。

这与插件的功能大致相同。