日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux(Ubuntu)下嵌入式gdb调试环境

發布時間:2025/3/15 linux 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux(Ubuntu)下嵌入式gdb调试环境 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

系統原理課實驗要做CMU的Bomblab實驗,然而bombg文件在arm架構,因此要配置一個交叉編譯/調試環境,曾測試在Ubuntu 15.04下直接安裝arm-none-eabi-gdb,然而調試時單步進行會出現IO錯誤,因此便自己下載了gdb-7.8編譯搭建arm-linux-gdb。
一.配置arm-linux-gdb

1.下載gdb ?http://ftp.gnu.org/gnu/gdb/

我下載的版本是gdb-7.8

2.安裝gdb
<1>解壓

#tar xjf gdb-7.8.tar.gz
?<2>進入到解壓好的gdb目錄中
#cd gdb-7.8/
<3>配置為arm架構
#./configure --target=arm-linux
<4>修改/gdb/remote.c,否則會出現 “Remote 'g' packet reply is too long”錯誤
把導致異常的代碼(line 6065):

if (buf_len > 2 * rsa->sizeof_g_packet)
? ? error (_("Remote 'g' packet reply is too long: %s"), rs->buf);
改為
if (buf_len > 2 * rsa->sizeof_g_packet)
{
? ? rsa->sizeof_g_packet = buf_len ;
? ? for (i = 0; i < gdbarch_num_regs (gdbarch); i++)
? ? {
? ? ? ? if (rsa->regs[i].pnum == -1) continue;
? ? ? ? if (rsa->regs[i].offset >= rsa->sizeof_g_packet)
? ? ? ? ? ? rsa->regs[i].in_g_packet = 0;
? ? ? ? else
? ? ? ? rsa->regs[i].in_g_packet = 1;
? ? }
}
??<5>安裝libncurses5-dev


#sudo apt-get install libncurses5-dev
<6>編譯

#make
??<7>安裝
#make install
<8>更改環境變量

#gedit /etc/environment //把arm-linux-gdb加入環境變量 (:/usr/local/arm-gdb/bin)
#source /etc/environment ?//更新環境變量


二.連接手機(root后)與配置adb
1.安裝adb


#sudo add-apt-repository ppa:nilarimogard/webupd8
#sudo apt-get update
#sudo apt-get install android-tools-adb
2.USB鏈接目標板/手機


#adb devices
#adb shell
3.將 bomb push 到開發板上

#adb push bombg /data/local
4.網線或無線連接 pc 機和目標板或手機

5.查詢手機ip或設置目標板的 ip(在目標板上執行)

#ifconfig eth0 192.168.0.100 (目標板)
#netcfg (手機)

6.查詢pc端ip或設置

#ifconfig?

#ifconfig eth0 192.168.0.101
7.目標版或手機開啟gdbserver(若無請自行搜索下載或編譯)

#gdbserver 192.168.0.101:2345 bombg (ip 為 pc 機機 ip)
8.在 pc 機上調試可執行程序 bombg

#arm-linux-gdb bombg
(gdb) target remote 192.168.0.100:2345 (ip為目標板或手機ip)

至此,應該能夠正常進行gdb調試了.


---------------------?
作者:BlueFissure?
來源:CSDN?
原文:https://blog.csdn.net/BlueFissure/article/details/51193976?
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

總結

以上是生活随笔為你收集整理的Linux(Ubuntu)下嵌入式gdb调试环境的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。