GPU應用程序Attach調試記錄

1.前期工作

1.1工程路徑確認

GPU項目共有6個工程,如圖 1-1:

圖 1-1 GPU項目工程

這6個工程建議放在同一目錄下,否則可能調試時會出現奇怪的問題,比如放在IDE默認的workspace目錄下,如圖 1-2:

圖 1-2 workspace工程目錄

1.2測試程序文件名確認

例如測試程序工程叫gpu_test,那麼主程序所在的文件名必須是gpu_test.c,不然調試時會報出找不到gpu_test.c警告。示例如圖 1-3:

圖 1-3確認測試程序主文件

2.GDB調試設置

2.1新建調試項目

2.1.1打開測試工程主程序文件

如圖 21:

圖 2-1打開測試主程序文件

2.1.2打開Debug Configurations選項

如圖 2-2所示:

圖 2-2打開調試配置菜單

2.1.3新建SylixOS調試項目

右擊SylixOS Remote Application選項,選擇New選項來新建一個SylixOS調試項目,如圖 2-3:

圖 2-3新建調試項目

2.2選擇調試程序

注意不要選擇strip目錄下的程序,如圖 2-4:

圖 2-4選擇調試程序

2.3選擇attach調試模式

如圖 2-5:

圖 2-5選擇attach調試模式

2.4添加動態庫路徑

一共要添加4個動態庫的路徑,如圖 2-6和圖 2-7:

圖 2-6添加動態庫路徑

圖 2-7添加後的動態庫

2.5指定調試程序,開始調試

前提是測試程序和庫都已經下載到目標板上,並且測試程序已經在運行狀態,進程ID可以通過在連接到目標板的終端輸入ps命令查到。如圖 2-8:

圖 2-8指定進程ID

3.調試功能使用

3.1選擇調試功能窗口

如圖 3-1所示:可以按需要選擇添加功能窗口,一般常用的是Debug、Breakpoints、Memory、Variables等。

圖 3-1選擇功能窗口

選擇好功能窗口後,還可以根據自己的喜好調整每個窗口的位置,如圖 3-2:

圖 3-2窗口位置調整

3.2添加斷點

點擊想要添加斷點的代碼行,等藍色區域出現後,直接雙擊即可添加一個斷點。添加成功後,藍色區域會出現一個小圓點,並且斷點會立即生效,程序運行至此代碼行處後會停止,而且此代碼行背景色變爲綠色,如圖 3-3:

圖 3-3添加斷點

3.3添加多個斷點

添加方法和上個小節一樣,並且在Breakpoints區可以對添加的多個斷點管理,如圖 3-4:

圖 3-4添加多個斷點

3.4查看變量和寄存器

當程序運行到斷點處時,可以在Variables區查看斷點上下文中的變量值,如圖 3-5:

圖 3-5查看變量

同樣,在Registers區查看寄存器的值,如圖 3-6:

圖 3-6查看寄存器

3.5恢復運行

如果想要程序再次運行到斷點處,按F8即可。如果想要去掉斷點運行,在Breakpoints區將斷點前面的勾去掉,然後按F8即可。如圖 3-7:

圖 3-7恢復運行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章