Qt的Pro文件

在使用Qt向导生成的应用程序.pro文件格式如下:

QT    += core gui  //包含的模块
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets //大于Qt4版本 才包含widget模块
TARGET = QtFirst  //应用程序名  生成的.exe程序名称
TEMPLATE = app   //模板类型   应用程序模板
SOURCES += main.cpp\  //源文件
	    mywidget.cpp
HEADERS  += mywidget.h  //头文件

.pro就是工程文件(project),它是qmake自动生成的用于生产makefile的配置文件。.pro文件的写法如下:

  • 注释
    从“#”开始,到这一行结束。

  • 模板变量告诉qmake为这个应用程序生成哪种makefile。下面是可供使用的选择:TEMPLATE = app

    • app -建立一个应用程序的makefile。这是默认值,所以如果模板没有被指定,这个将被使用。
    • lib - 建立一个库的makefile
    • vcapp - 建立一个应用程序的VisualStudio项目文件。
    • vclib - 建立一个库的VisualStudio项目文件。
    • subdirs -这是一个特殊的模板,它可以创建一个能够进入特定目录并且为一个项目文件生成makefile并且为它调用make的makefile。
    • 指定生成的应用程序名:
      TARGET = QtDemo

    • 工程中包含的头文件
      HEADERS += include/painter.h

    • 工程中包含的.ui设计文件
      FORMS += forms/painter.ui

    • 工程中包含的源文件
      SOURCES += sources/main.cpp sources

    • 工程中包含的资源文件
      RESOURCES += qrc/painter.qrc
      greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

      这条语句的含义是,如果QT_MAJOR_VERSION大于4(也就是当前使用的Qt5及更高版本)需要增加widgets模块。如果项目仅需支持Qt5,也可以直接添加QT += widgets一句。不过为了保持代码兼容,最好还是按照QtCreator生成的语句编写。

    • 配置信息

      CONFIG用来告诉qmake关于应用程序的配置信息。
      CONFIG += c++11 //使用c++11的特性
      在这里使用“+=”,是因为我们添加我们的配置选项到任何一个已经存在中。这样做比使用“=”那样替换已经指定的所有选项更安全。