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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 远程调试文件夹,GDB远程调试开发板程序

發(fā)布時間:2025/3/12 linux 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 远程调试文件夹,GDB远程调试开发板程序 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、概述

可能我們都熟悉直接在發(fā)行版linux系統(tǒng)下調(diào)試系統(tǒng),只需要在安裝系統(tǒng)的時候包含了調(diào)試工具,直接可以根據(jù)gdb進(jìn)行調(diào)試。但對于很多做嵌入式的來說,可能經(jīng)常需要調(diào)試運(yùn)行在開發(fā)板上的應(yīng)用程序,下面就來說說。

先說一下我們的調(diào)試原理:首席會在開發(fā)板上運(yùn)行一個gdbserver,通過gdbserver接收develop機(jī)器的命令,然后通過gdbserver控制開發(fā)板的程序運(yùn)行。gdbserver就相當(dāng)于開發(fā)板應(yīng)用程序和develop機(jī)器之間的橋梁,一方面從develop機(jī)器上接收命令控制開發(fā)板的應(yīng)用程序;另一方面,會向開發(fā)板報告程序的運(yùn)行情況,如各種變量的值,方面開發(fā)人員調(diào)試和觀察(這不就是我們調(diào)試的目的嘛)。在develop上要裝有arm-none-linux-gnueabi-gdb(不一定是這個名字,是屬于交叉編譯工具鏈中的gdb,不是發(fā)行版linux自帶的),用它在develop上啟動應(yīng)用程序,并和開發(fā)板聯(lián)機(jī),通過在develop上輸入命令來調(diào)試開發(fā)板上運(yùn)行的程序。

二、安裝工具:arm-none-linux-gnueabi-和gdbserver

交叉編譯器的名字是arm-none-linux-gnueabi-gcc(根據(jù)你自己的交叉編譯工具,有的可能是arm-linux-gcc),下面會用到

1.?從下載gdb,解壓,進(jìn)到相關(guān)目錄

2. 編譯GDB

#cd gdb-7.2

#./configure --target=arm-none-linux-gnueabi --prefix=/usr/local/arm-gdb ? // 上面提到的交叉編譯器,就是用在這里,因為我們target上運(yùn)行

// 的應(yīng)用程序是用它編譯出來的

#make

#make install ? ? ? ? ? //生成在/usr/local/arm-gdb/bin下

把bin下面生成的arm-none-linux-gnueabi-gdb拷貝到交叉編譯鏈目錄中或修改環(huán)境變量把它的路徑加進(jìn)去,這樣我們可以直接用這個命令

3.編譯GDB Server

#cd ./gdb/gdbserver ? ? ? // 即是目錄gdb-7.2/gdb/gdbserver

#./configure --target=arm-none-linux-gnueabi --host=arm-none-linux-gnueabi

#make CC=arm-none-linux-gnueabi-gcc ? ? //編譯用于目標(biāo)機(jī)的stub程序 ?生成gdbserver是GDB客戶端程序,在板子上運(yùn)行。

之后在~/gdb/gdbserver文件夾下生成可執(zhí)行文件gdbserver

然后將gdbserver拷貝到板子上的某個bin目錄下即可。

三、調(diào)試步驟

201.123.116.65:5678代表開發(fā)板的ip是201.123.116.65,5678是任意給的端口

1.在開發(fā)板上:

[root@ATP2400 test-drv]# gdbserver 201.123.116.65:5678 test

Process server created; pid = 907

Listening on port 5678

注意:編譯的test程序必須加了調(diào)試信息,即編譯時加上“-g”

2.在develop上:

[root@ATP2400 test-drv]# arm-none-linux-gnueabi-gdb test

進(jìn)入到gdb,然后

(gdb) set solib-absolute-prefix /nfsdir/atp2400/mini-rootfs-pgy-1808

(gdb) set solib-search-path /nfsdir/atp2400/mini-rootfs-pgy-1808/lib

(gdb) target remote 201.123.116.65:5678

Remote debugging using 201.123.116.65:5678

warning: Can not parse XML target description; XML support was disabled at compile time

Reading symbols from /nfsdir/atp2400/mini-rootfs-pgy-1808/lib/ld-linux.so.3...(no debugging symbols found)...done.

Loaded symbols for /nfsdir/atp2400/mini-rootfs-pgy-1808/lib/ld-linux.so.3

0xb6fda7b0 in _start () from /nfsdir/atp2400/mini-rootfs-pgy-1808/lib/ld-linux.so.3

解讀:上面在gdb下面的操作如果直接執(zhí)行target remote 201.123.116.65:5678系統(tǒng)會抱怨

說庫不匹配,因為啟動的gdb是arm-none-linux-gnueabi-gdb,是屬于運(yùn)行開發(fā)板程序的gdb,

所以需要用到的動態(tài)鏈接庫也應(yīng)該是arm的,而不是本地庫,本地庫是支持X86的。前兩句就是

設(shè)置動態(tài)鏈接庫的路徑的,/nfsdir/atp2400/mini-rootfs-pgy-1808/是我做的開發(fā)板文件系統(tǒng)

的源文件

3.然后就可以直接進(jìn)行調(diào)試了

(gdb) b main

Breakpoint 1 at 0x8698: file server.c, line 19.

(gdb) l

5#include

6#include

7#include

8

9#define SOCKET_PORT 7000

10#define BUF_SIZE 512

11int main(int argc, char *argv[])

12{

13int fd;

14struct sockaddr_in svraddr;

(gdb) c

Continuing.

Breakpoint 1, main (argc=1, argv=0xbefffe94) at server.c:19

19int n = 0;

(gdb)

由現(xiàn)象可以看到在通過develop調(diào)試開發(fā)板的應(yīng)用程序時,開發(fā)板是不接受任何命令的,用串口終端進(jìn)行輸入會沒有任何反應(yīng),

只有develop下的gdb退出后,開發(fā)板才可以正常接收命令

關(guān)于gdb調(diào)試命令,請網(wǎng)上查閱。

總結(jié)

以上是生活随笔為你收集整理的linux 远程调试文件夹,GDB远程调试开发板程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美涩涩涩 | 夜夜爽夜夜爽 | 乱熟女高潮一区二区在线 | 亚洲特黄特色 | 欧美成人vr18sexvr | 成人中文字幕在线观看 | 欧美激情视频网址 | 成人黄色在线免费观看 | 国产精品极品白嫩在线 | 亚洲中字| 91免费看黄 | 一级免费视频 | 日本亲近相奷中文字幕 | 日韩视频在线观看一区 | 国产乡下妇女做爰毛片 | 91免费网站视频 | 欧美aa级| 5566色| 午夜你懂的 | 国产女女做受ⅹxx高潮 | 欧美午夜一区二区三区 | 日本免费无人高清 | 91精品国产综合久久久久 | 奶妈的诱惑 | 美女av网站 | 精品国产亚洲一区二区麻豆 | 伊人成人22| 日韩成人精品在线 | 男同av在线观看一区二区三区 | 国产超碰在线 | 午夜久久久久久久久久 | 国产精品国产三级国产aⅴ下载 | 亚洲精品白浆 | 草草影院国产第一页 | 久久久www成人免费无遮挡大片 | 国产在线视频你懂的 | 国产成人三级在线播放 | 日韩专区在线观看 | √8天堂资源地址中文在线 欧美精品在线一区二区 | 日韩激情国产 | 97伦伦午夜电影理伦片 | 欧美级毛片 | 性感美女毛片 | 黄色a免费| 在线国产黄色 | 一级黄色小视频 | 中文字幕av一区 | 91精品视频网站 | 美女被叉叉的影院 | 涩涩网址 | 国产精品不卡一区 | 国产成人在线视频网站 | 欧美午夜理伦三级在线观看 | 国产精欧美一区二区三区蓝颜男同 | 91久久人澡人人添人人爽欧美 | 日韩福利一区二区 | 国产无套内射又大又猛又粗又爽 | 久久精品无码Av中文字幕 | www.中文字幕.com | 艳妇臀荡乳欲伦交换gif | 久久色网站 | 爱情岛论坛永久入址在线 | 国产午夜精品视频 | 精品日本一区二区三区在线观看 | 亚洲情涩| av网址在线看 | 国产伦精品一区二区三区视频网站 | 一级黄色片免费看 | 日韩久久久久久久 | 麻豆69xxnxxporn| av在线www | 一及黄色大片 | 中国黄色一级片 | 国产美女免费视频 | 国产精品亚洲天堂 | 亚洲狼人色 | 精品成人一区二区三区久久精品 | 五月天综合网站 | 性――交――性――乱睡觉 | 老太脱裤让老头玩ⅹxxxx | 国产精品黄 | 美国av片| av作品在线观看 | 在线观看不卡的av | 中文字幕一区二区三区四区 | 亚洲av无码国产在丝袜线观看 | 日本激情视频网站 | 超碰在线免费播放 | 熟女少妇内射日韩亚洲 | 四虎av| 日韩簧片在线观看 | 嫩草一二三 | 日韩成人自拍 | youjizz国产 | 182tv午夜福利在线观看 | 欧美亚洲图片小说 | 综合色99 | 少妇又紧又爽视频 | 国产网站91 |