Qt 中的配置文件Pro细节笔记

简述

在使用Qt的时候,在一些大的工程中,常常需要各个模块之间库的调用,这时候就需要对pro文件进行配置,为了使用的方便,对pro常用内容总结整理。必要的进行实例说明与一些开发中的整理

新建立一个Qt的工程,打开pro文件

#-------------------------------------------------
#
# Project created by QtCreator 2017-07-13T22:14:30
#
#-------------------------------------------------

QT       += core gui 

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = HelloCSDN
TEMPLATE = app


SOURCES += main.cpp\
        hello.cpp

HEADERS  += hello.h

FORMS    += hello.ui

逐行讲解
QT += core gui 它的作用是指定使用的Qt模块,默认的情况下是包含core和gui两部分的(上面的就是默认生成的)core基础代码模块gui是图形界面库,这样可以确保GUI应用程序无需进一步配置就能够构建。
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 比较Qt的版本,如果大于Qt4,就继续添加widgets模块,Qt5把Qt4的gui库提取了出来放在了这个模块里面)
TARGET = HelloCSDN 生成app或者、dll的名字
TEMPLATE = app当前工程的类型表示生成的是可执行应用程序,也可以是 “TEMPLATE = dll”,模块之间的开发,多选则dll的形式。

SOURCES += main.cpp\
mian.cpp
HEADERS += hello.h
FORMS += hello.ui
分别代表着 头文件,源文件,还有ui文件,在设计师中,设计好后,会直接添加到pro文件中。
为了对代码的统一管理,需要对文件分类存放,
“+=”操作符?向一个变量的值的列表中添加一个值;“‐=”操作符从一个变量的值的列表中移去一个值;
例如src,include,ui_form,resources等,可以这样配置
SOURCES += $$PWD/src/main.cpp\
./src/mian.cpp
HEADERS += hello.h
FORMS += hello.ui
“$$PWD”与“./”的功能是一样的代表的是当前的目录,当前目录就是pro文件所在目录。在当前的目录下面有一个src的文件夹。

在默认的pro文件中继续添加

  • RESOURCES

RESOURCES += \
res.qrc
这里面添加的是资源。

  • CONFIG

告诉qmake应用程序的配置信息。这个变量可以用来指定是生成debug模式还是release模式,也可以都生成。也可以用来打开编译器警告或者关闭。还可以用来配置要Qt加载库

CONFIG +=debug_and_release
CONFIG(debug,debug|release){
    TARGET= hello
    DESTDIR= ./debug
}
else{
    TARGET= hello
    DESTDIR= ./release
}
  • DEFINES

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

//例如:

DEFINES += USE_MY_STUFF

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

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

往往可以指定项目的特殊版本(比如:正式版、试用版)、对一些特殊功能模块(比如:加密狗)进行限制等。

  • DEPENDPATH

    工程的依赖路径,当包含文件时使用,(描述了建立应用程序所依赖的其他文件所在的路 径)。

  • DESTDIR

指定在何处放置目标文件。
可以是dll与可执行文件。在库开发中多用到

DESTDIR = ../../lib
  • INCLUDEPATH

指定工程要用到的头文件路径,一般包括用户自定义的头文件路径或没有放入系统头文件路径的头文件路径

//例如:

INCLUDEPATH = c:/msdev/include d:/stl/include

//如果路径包含空格,需要使用引号包含。
这里写代码片
win32:INCLUDEPATH += "C:/mylibs/extra headers"
unix:INCLUDEPATH += "/home/user/extra headers"
  • LIBS
//加载动态库文件。如:linux版
liLIBS+=./mitab/libmitab.so
  • MOC_DIR

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

  • OBJECTS_DIR

指定所有中间文件.o(.obj)放置的目录
OBJECTS_DIR+= ../tmp

  • RCC_DIR

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

  • UI_DIR

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

UI_DIR+= forms

  • 源文件编码方式

CODECFORSRC= GBK

  • RC_ICONS

RC_ICONS = myapp.ico
仅适用于Windows,指定的图标应该包含在一个生成的.rc文件里。

  • 平台相关性处理

在进行不同平台开发中需要进行配置,windows平台是win32,Linux平台是unix。Windows和Linux的动态库文件格式是不一样的,一个是lib文件一个是so文件

win32
{
SOURCES+= hello_win.cpp //win平台
}

unix
{
    SOURCES += hello_unix.cpp
}
}

接下来,我将会在我的项目中进行应用。敬请关注···

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值