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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Qt工程pro文件配置详解

發布時間:2025/4/5 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Qt工程pro文件配置详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 1 pro文件常用配置
    • 1.1 注釋
    • 1.2 CONFIG
    • 1.3 DEFINES
    • 1.4 FORMS
    • 1.5 HEADERS
    • 1.6 INCLUDEPATH
    • 1.7 LIBS
    • 1.8 QT
    • 1.9 SOURCES
    • 1.10 TRANSLATIONS
    • 1.11 TARGET

1 pro文件常用配置

Qt 使用 qmake 構建工具來構建工程,作用和 cmake 一樣,生成 Makefile。Qt 的 pro 文檔則對應 cmake 的 CMakeLists.txt。

下面講解一下 pro 文檔各個參數的意義和用法。

1.1 注釋

以“#”開始,到這一行結束。快捷鍵:Ctrl + /。

1.2 CONFIG

指定編譯器選項和項目配置,值由 qmake 內部識別并具有特殊意義。

比如:CONFIG += c++11。

1.3 DEFINES

qmake 添加這個變量的值作為編譯器 C 預處理器宏(-D 選項)。

例如:DEFINES += USE_MY_STUFF。

1.4 FORMS

指定UI文件(參考: Qt Designer Manual)在編譯前被 uic 處理。所有的構建這些 UI 文件所需的依賴、頭文件和源文件都會自動被添加到項目中。

例如:

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

1.5 HEADERS

指定項目中所有的頭文件。qmake 會自動檢測是頭文件的類中是否需要 moc,并增加適當的依賴關系和文件到項目中,來生成和鏈接 moc 文件。

例如:

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

moc 全稱是 Meta-Object Compiler,也就是“元對象編譯器”。Qt 程序在交由標準編譯器編譯之前,先要使用 moc 分析 C++ 源文件。如果它發現在一個頭文件中包含了宏 Q_OBJECT,則會生成另外一個 C++ 源文件。這個源文件中包含了Q_OBJECT 宏的實現代碼。這個新的文件名字將會是原文件名前面加上 moc_ 構成。這個新的文件同樣將進入編譯系統,最終被鏈接到二進制代碼中去。因此我們可以知道,這個新的文件不是“替換”掉舊的文件,而是與原文件一起參與編譯。另外,我們還可以看出一點,moc 的執行是在預處理器之前。因為預處理器執行之后,Q_OBJECT 宏就不存在了。

1.6 INCLUDEPATH

指定編譯項目時應該被搜索的#include 目錄。
例如:
INCLUDEPATH = c:/msdev/include d:/stl/include
如果路徑包含空格,需要使用引號包含。

win32:INCLUDEPATH += "C:/mylibs/extra headers" unix:INCLUDEPATH += "/home/user/extra headers"

1.7 LIBS

指定鏈接到項目中的庫列表。如果使用 Unix -l (library) 和 -L (library path) 標志,在
Windows 上 qmake 正確處理庫(也就是說,將庫的完整路徑傳遞給鏈接器),庫必須存在,qmake 會尋找-l 指定的庫所在的目錄。
例如:

win32:LIBS += c:/mylibs/math.lib unix:LIBS += -L/usr/local/lib -lmath(libmath.a)

1.8 QT

指定項目中使用 Qt 的模塊。
默認情況下,QT 包含 core 和 gui,以確保標準的 GUI 應用程序無需進一步的配置就可以構建。如果想建立一個不包含 Qt GUI 模塊的項目,可以使用“ -=”操作符。

下面一行將構建一個很小的 Qt 項目:
QT -= gui # 僅僅使用 core 模塊
如果要創建一個界面,里面用到 XML 及網絡相關的類,那么需要包含如下模塊:
QT += core gui widgets xml network

1.9 SOURCES

指定項目中所有源文件。
例如:

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

1.10 TRANSLATIONS

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

例如:
TRANSLATIONS += chinese.ts english.ts

1.11 TARGET

指定目標文件的名稱。默認情況下包含的項目文件的基本名稱。
例如:

TEMPLATE = app TARGET = myapp SOURCES = main.cpp

總結

以上是生活随笔為你收集整理的Qt工程pro文件配置详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。