適用於樹莓派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
注意:過程中可能會下載一些軟體包,確保你的網路連線的穩定,有條件的可以FQ連上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就可以使用
下一篇:利用VisualGDB搭建Vsiaul Studio的Qt for Raspberry Pi開發環境