BBB學習(十七):eclipse遠程調試BBB程序

一、前言

前節中主要介紹了編譯虛擬機上主機gdb、編譯可以BBB上運行的gdbserver、eclipse連接BBB的shell及文件系統,同時通過eclipse將gdbsesrver移植到BBB中,此時基本的調試的條件已經具備,可以通過在虛擬機主機中的eclipse與BBB進行聯調,對程序的調試非常方便。

二、eclipse新建工程

在虛擬機主機中,打開eclipse新建C++工程:

image

工程名就叫BBBtest,選擇建立一個空工程:

image

向工程中添加C++文件,名稱就叫做test.cpp

image

image

將前節中操作BBB普通IO口中的C++程序複製到test.cpp文件中:

image

三、工程配置

如果要在宿主機即虛擬機上安裝的ubuntu系統中通過eclipse來編譯並運行BBB目標板上的程序時主要要完成以下三種配置:

  • eclipse配置默認編譯器爲交叉編譯器
  • eclipse配置通過ssh來訪問BBB來run程序
  • eclipse配置通過ssh來訪問BBB及gdbserver來debug程序

1. 配置交叉編譯器

配置交叉編譯器主要是完成配置默認GCC編譯器、G++編譯器、鏈接器,彙編器的命令、默認路徑及命令參數,同時配置工程參考庫搜索路徑。

右鍵選擇工程屬性:

image

首先配置GCC命令參數:

-c -fmessage-length=0 -lpthread

image

其次配置GCC路徑:

/usr/arm-linux-gnueabi/include

image

最後填寫GCC命令:

arm-linux-gnueabi-gcc

image

以同樣的方法配置G++編譯器、鏈接器、彙編器:

image

image

image

image

image

image

配置系統路徑:

image

image

image

image

image

配置完成後,點擊編譯程序,可以生成交叉編譯後的程序:

image

2. 配置運行程序環境

右鍵工程選擇運行配置:

image

選擇運行遠程程序,右鍵新建配置:

image

在下圖配置中,配置是在本地系統中運行程序,此時要新建BBB遠程系統,配置BBB ssh遠程連接:

image

image

配置BBB的ssh,和前節相同。

image

配置ssh完成後,需要指定程序在BBB上的運行路徑,同時運行程序時要改變其屬性使其可執行:

/root/Desktop/BBBtest
chmod +x /root/Desktop/BBBtest

image

此時,可以在eclipse上運行已經交叉編譯好的程序:

image

3. 配置debug環境

右鍵工程選擇debug配置,主要配置同運行配置,如下圖:

image

image

image

因爲要debug,所以要配置gdb及gdbserver:

image

image

此時debug本程序:

image

可以設置斷點、單步運行,非常方便調試:

image

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