適用於樹莓派Raspberry Pi的嵌入式QT平台(三) -- 交叉編譯 Raspberry Pi 版GDB with Python


上篇講到“在Windows下用Qt Creator開發編譯Raspberry Qt 5應用程序”,由於目前Qt Creator所支持的GDB需要有Python支持,但是目前MinGW中的GDB都是無Python支持的,所以我們需要自己下載GDB代碼並且編譯成針對Raspberry Pi支持Python的版本。

 

1. 准備工作

 

解壓縮Qt Creator源碼,放入C:\Download目錄,並且將其他下載的庫及代碼放入 C:\Download\qt-creator-opensource-src-3.6.0-rc1\dist\gdb\source (在gdb目錄下新建一個source目錄)

2. 配置編譯環境

有人要說,為什么不用之前toolchain for Windows的MinGW32來編譯,因為經過本人多次嘗試,發現toolchain中的MinGW版本過低,有一個time.h的結構體聲明bug導致我們GDB編譯無法進行。所以我們需要更新到最新的MinGW版本來編譯GDB

安裝MinGW-get到C:\MinGW

完成后打開 C:\MinGW\bin\mingw-get.exe,選擇 Basic Setup->勾選右側列表中 mingw-developer-toolkit, mingw32-base,mingw32-gcc-g++以及msys-base軟件包,點擊菜單Installation->Apply Changes 完成軟件包的安裝。

安裝軟件完成后,打開 C:\MinGW\msys\1.0\msys.bat 進入MinGW shell環境。

 

3. 配置編譯GDB with Python for Win/Linux/ARM

打開 C:\Download\qt-creator-opensource-src-3.6.0-rc1\dist\gdb\Makefile.mingw 文件

在targets那一行添加Raspberry Pi的ABI:arm-linux-gnueabihf,然后保存文件。打開msys shell,進入目錄 C:\Download\qt-creator-opensource-src-3.6.0-rc1\dist\gdb,make這個Makefile.mingw開始編譯:

注意:過程中可能會下載一些軟件包,確保你的網絡連接的穩定,有條件的可以翻牆連上VPN。如果下載一直出現問題,則可以選擇手動下載那些軟件包放入source目錄中。

 

當編譯打包全部完成后(大概會花一個小時編譯),你可以在 C:\Download\qt-creator-opensource-src-3.6.0-rc1\dist\gdb\qtcreator-gdb-7.10 找到編譯好的GDB,並且也有一個打包好的 qtcreator-gdb-7.10-mingw32_nt-6.2-i686.tar.gz 在\dist\gdb目錄下。

 

4. 在Qt Creator中配置並聯機調試Qt for Raspberry Pi應用

打開Qt Creator,進入Tools->Options...->Build & Run->Debugger,添加一個Debugger,選擇剛才編譯出來的gdb.exe,如下圖,保存后。

打開Kits,選擇之前配置好的Rasspberry Pi的開發Kit,在Debugger下選擇配置好的Debugger,點擊OK保存關閉。

 

好了,至此,Qt Creator就可以使用按鈕進行聯機調試,可以設置斷點,查看運行時內存,線程狀態。GDB會向Raspberry Pi推送一個gdbserver,並且聯合本地的GDB進行調試。下面面是我調試一個Qt for Raspberry Pi應用時的截圖:

 

下一篇:利用VisualGDB搭建Vsiaul Studio的Qt for Raspberry Pi開發環境


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM