QT編程環境
QT在Windows操作系統下的三種編程環境搭建。
方案 | 編程環境 | 編譯器 | 調試器 |
1 | Qt Creator | MinGW GCC | GDB |
2 | Qt Creator | Microsoft Visual C++ Compiler | Debugging Tools for Widows |
3 | Microsoft Visual Studio? | VS自帶 | VS自帶 |
方案提及的QT安裝程序及壓縮包均能在官網Index of /official_releases下載到。
?Qt編譯器MinGW-32下載地址:Index of /development_releases/prebuilt/mingw_32
Index of /development_releases/prebuilt/mingw_64?Qt編譯器MinGW-64下載地址:Index of /development_releases/prebuilt/mingw_64
QT調試功能
一、基礎調試操作
-
?啟動調試?
-
使用?
F5
?或點擊調試按鈕(綠色蟲子圖標)進入調試模式。調試前需確保項目為?Debug
?版本,否則無法加載調試信息?。 -
支持的調試器:Windows 平臺推薦 CDB(需安裝 Debugging Tools for Windows),其他平臺可選 GDB 或 LLDB?。
GDB調試器:安裝MinGW后,對應的bin目錄下有gdb.exe文件。通過kit工具添加gdb
CDB調試器:已經安裝過sdk(比如:win10系統),通過控制面板,找到window軟件開發包套件(如下),右鍵,再選擇“更改”,選擇Debuging Tools for Windows。
安裝完畢之后,重啟Qt Creator就可以調試,如果不行,就通過kit工具添加CDB
-
-
?斷點管理?
-
在代碼行號左側單擊設置斷點,程序運行到斷點時會暫停執行,可查看變量、調用棧等信息?。
-
支持條件斷點和臨時禁用斷點?。
-
-
?單步執行與變量監控?
-
使用?
Step Into
(步入)、Step Over
(步過)、Step Out
(步出)逐行跟蹤代碼邏輯?。 -
在調試視圖中查看局部/全局變量,支持修改變量值進行動態測試?。
-
二、高級調試技巧
-
?調試動態庫(DLL)?
-
?Attach to Running Application?:附加到已運行進程調試動態庫?。
-
?Attach to Unstarted Application?:配置未啟動的應用程序進行調試?。
-
?Start and Debug External Application?:直接啟動外部應用并調試其加載的動態庫?。
-
-
?處理程序崩潰?
-
程序崩潰時,調試器會自動定位到崩潰位置,通過調用棧(Call Stack)回溯問題源頭,檢查變量值或指針是否異常(如野指針或越界訪問)?。
-
常見錯誤分析:
-
Segmentation fault
:內存訪問錯誤,檢查指針或容器越界?。 -
0xc0000005
:空指針調用,需驗證指針有效性?。
-
-
-
?調試子進程?
-
在調試器設置中添加?
set follow-fork-mode child
(GDB)命令,自動附加到由?QProcess
?啟動的子進程?。
-
三、調試配置
-
?調試 Qt 源碼?
-
?MinGW/MSVC 配置?:安裝 Qt 源碼并配置調試符號路徑,支持單步進入 Qt 內部函數?。
-
建議使用 Qt Creator 10.0.0+ 版本,內置代碼分析插件,對 CMake 項目支持更完善?。
-
-
?Release 模式調試?
在?.pro
?文件中添加編譯選項,如下,重新編譯生效?,生成調試符號后需清理舊構建文件(如?.pdb
)。 -
QMAKE_CXXFLAGS_RELEASE += -g QMAKE_LFLAGS_RELEASE = -g
-
?遠程調試(如嵌入式設備)?
- 配置交叉編譯工具鏈,構建 ARM 版本程序后傳輸到目標設備,通過 Qt Creator 遠程附加調試?。
四、注意事項
-
?版本兼容性?:確保 Qt Creator 版本與調試器及工具鏈匹配,避免功能缺失?。
-
?調試符號?:調試第三方庫或系統組件時需安裝對應的調試符號包?。
-
?資源清理?:修改調試配置后需執行?
清理
?→?qmake
?→?重新構建,
確保生效?。