日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > c/c++ >内容正文

c/c++

QT pro文件解析

發(fā)布時(shí)間:2025/1/21 c/c++ 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QT pro文件解析 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在QT中使用qmake自動(dòng)生成pro文件,如果要自己定制工程選項(xiàng),則需要自行修改pro文件。

pro文件有以下關(guān)鍵字:TEMPLATE、TARGET、DESTDIR、DEPENDPATH、INCLUDEPATH、SOURCES、HEADERS、FORMS、LIBS、TRASHLATIONS、RESOURCES、CONFIG、UI_DIR、RCC_DIR、MOC_DIR、OBJECTS_DIR、DEFINES。

其中:TEMPLATE變量定義了工程的編譯模式,默認(rèn)編譯為app。TEMPLATE可以為:app、lib(庫(kù))、subdirs(多級(jí)目錄管理)等。

TARGET:生成目標(biāo)的名字。如:TARGET = mylib

DESTDIR:生成目標(biāo)的路徑。如:DESTDIR = ../bin/ 則目標(biāo)文件的路徑為當(dāng)前pro文件所在目錄的上一級(jí)的bin目錄下

DEPENDPATH:工程的依賴(lài)路徑

INCLUDEPATH:指定工程要用到的頭文件路徑,一般包括用戶(hù)自定義的頭文件路徑或沒(méi)有放入系統(tǒng)頭文件路徑的頭文件路徑

SOURCES:工程需要的源文件

HEADERS:工程所需要的頭文件,一般包括用戶(hù)自定義的頭文件或未放入系統(tǒng)頭文件路徑的頭文件

FORMS:工程要用到的ui文件(ui文件時(shí)用QT設(shè)計(jì)器生成的)

LIBS:加載動(dòng)態(tài)庫(kù)文件。如:LIBS+=./mitab/libmitab.so

TRASHLATIONS:加載要用到的語(yǔ)言翻譯*.ts文件

RESOURCES:加載要用到的資源*.qrc文件

CONFIG:告訴qmake應(yīng)用程序的配置信息:這個(gè)變量可以用來(lái)指定是生成debug模式還是release模式,也可以都生成;也可以用來(lái)打開(kāi)編譯器警告(warn_on輸出盡可能多的警告信息)或者關(guān)閉(warn_off -編譯器會(huì)輸出盡可能少的警告信息);還可以用來(lái)配置要Qt加載庫(kù),例如如果要用到Qt的多線(xiàn)程,則:CONFIG+=qt thread再例如配置debug或release模式:

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

如果你要在windows下面運(yùn)行console:CONFIG +=console

UI_DIR:UIC將ui轉(zhuǎn)化為頭文件所存放的目錄

RCC_DIR:RCC將qrc文件轉(zhuǎn)化為頭文件所存放的目錄;

MOC_DIR:MOC命令將含Q_OBJECT的頭文件轉(zhuǎn)換為標(biāo)準(zhǔn)的頭文件存放的目錄;

OBJECTS_DIR:生成的目標(biāo)文件存放的目錄;

DEFINES:應(yīng)用程序所需的額外的預(yù)處理程序定義的列表#在.h文件中就可以使用:#ifdefinexx_xx_xxx;

LIBS += -L folderPath //引入的lib文件的路徑 -L:引入路徑

Release:LIBS+= -L folderPath // release 版引入的lib文件路徑

Debug:LIBS+= -L folderPath // Debug 版引入的lib 文件路徑

RC_FILE = xxx.icns //程序中所用到的圖片等資源文件;

QT是跨平臺(tái)的,所以我們?cè)诓煌钠脚_(tái)上用同一個(gè)pro文件,這要加入有關(guān)平臺(tái)的信息。windows平臺(tái)是win32,Linux平臺(tái)是unix。
例如在Windows和Linux的動(dòng)態(tài)庫(kù)文件格式是不一樣的,一個(gè)是lib文件一個(gè)是so文件:win32:LIBS+= ./mitab/mitab_i.lib unix:LiBS+= ./mitab/libmitab.so
再如:
win32{
SOURCES+= hello_win.cpp //win平臺(tái)
}
unix{
SOURCES+= hello_linux.cpp //unix/linux平臺(tái)
}

可以通過(guò)在其它任何一個(gè)變量的變量名前加$$來(lái)把這個(gè)變量的值分配給當(dāng)前的變量,例如:MY_DEFINES= $$DEFINE #將DEFINE的值分配給MY_DEFINES 又如: TARGET = myapp UI_DIR = ../bin/$$TARGET/ui MOC_DIR = ../bin/$$TARGET/moc OBJECTS_DIR = ../bin/$$TARGET/objects

則uic所生成的文件在路徑../bin/myapp/ui目錄下;moc文件在../bin/myapp/moc目錄下;obj目標(biāo)文件在../bin/myapp/objects目錄下。

原文地址:https://www.cnblogs.com/boright88/p/6264642.html

與50位技術(shù)專(zhuān)家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的QT pro文件解析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。