美文网首页
Qt 之 pro 配置详解-学习篇

Qt 之 pro 配置详解-学习篇

作者: 第三人称noah | 来源:发表于2019-01-15 08:53 被阅读0次

以下资料均为网上搜集,主要为了记住配置方便查找。

CONFIG

用来专门制定编译器选项以及项目配置

选项 说明
release 项目以release模式构建。
debug 项目以debug模式构建。
debug_and_release 项目准备以debug和release两种模式构建。
debug_and_release_target 此选项默认设置。如果也指定了debug_and_release,最终的debug和release构建在不同的目录。
build_all 如果指定了debug_and_release,默认情况下,该项目会构建为debug和release模式。
autogen_precompile_source 自动生成一个.cpp文件,包含在.pro中指定的预编译头文件。
ordered 使用subdirs模板时,此选项指定应该按照目录列表的顺序处理它们。
precompile_header 可以在项目中使用预编译头文件的支持。
warn_on 编译器应该输出尽可能多的警告。如果也指定了warn_off,最后一个生效。
warn_off 编译器应该输出尽可能少的警告。
exceptions 启用异常支持。默认设置。

DEFINES

qmake添加这个变量的值作为编译器C预处理器宏(-D选项)。
例如:

DEFINES += USE_MY_STUFF

然后就可以在代码中使用:

#ifdef USE_MY_STUFF
    // TODO
#else
    // TODO
#endif

用来制定项目的特殊版本,对一些特殊功能模块进行限制。

DESTDIR

指定生成的应用程序放置的目录

DESTDIR += ../bin

UI_DIR

指定uic命令将.ui文件转化成ui_*.h文件的存放的目录

UI_DIR += forms

RCC_DIR

指定rcc命令将.qrc文件转换成qrc_*.h文件的存放目录

unix:RCC_DIR = ../myproject/resources
win32:RCC_DIR = c:/myproject/resources

MOC_DIR

指定moc命令将含Q_OBJECT的头文件转换成标准.h文件的存放目录

MOC_DIR += ../tmp

FORMS

指定工程中包含的ui设计文件。

FORMS = mydialog.ui \
        mywidget.ui \
        myconfig.ui

HEADERS

指定项目中所有的头文件。
qmake会自动检测是头文件的类中是否需要moc,并增加适当的依赖关系和文件到项目中,来生成和链接moc文件。

HEADERS = myclass.h \
          login.h \
          mainwindow.h

INCLUDEPATH

编译项目包含的路径

INCLUDEPATH = c:/msdev/include d:/stl/include
win32:INCLUDEPATH += "C:/mylibs/extra headers"
unix:INCLUDEPATH += "/home/user/extra headers"

LIBS

引入的lib文件的路径 -L:引入路径
linux 必须 -l (library) 和 -L (library path) windows和linux不一样。

win32:LIBS += c:/mylibs/math.lib
unix:LIBS += -L/usr/local/lib -lmath
win32:LIBS += "C:/mylibs/extra libs/extra.lib"
unix:LIBS += "-L/home/user/extra libs" -lextra

OBJECTS_DIR

指定所有中间文件.o(.obj)放置的目录。

unix:OBJECTS_DIR = ../myproject/tmp
win32:OBJECTS_DIR = c:/myproject/tmp

QT

指定程序需要的模块

QT += core gui widgets xml network

RESOURCES

指定资源文件 (qrc) 的名称

RESOURCES += Resource/resource.qrc

RC_FILE

指定应用程序资源文件的名称

RC_FILE += myapp.rc

SOURCES

指定项目中所有源文件。

SOURCES = myclass.cpp \
          login.cpp \
          mainwindow.cpp

TARGET

指定目标文件的名称

TEMPLATE = app
TARGET = myapp
SOURCES = main.cpp

上面项目会生成一个可执行文件,Windows下为myapp.exe,Unix下为myapp。

TEMPLATE

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

TEMPLATE = lib
SOURCES = main.cpp
TARGET = mylib

TRANSLATIONS

指定包含用户界面翻译文本的翻译(.ts)文件列表。

TRANSLATIONS += Resource/myapp_zh.ts \
                Resource/myapp_en.ts

相关文章

网友评论

      本文标题:Qt 之 pro 配置详解-学习篇

      本文链接:https://www.haomeiwen.com/subject/ioledqtx.html