自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

手把手教你使用VSCode + Gdb + Gdbserver調(diào)試ARM程序

商務(wù)辦公
開(kāi)發(fā)STM32時(shí),我們有IDE可以用,IDE中已經(jīng)集成有調(diào)試器,配合仿真器使用起來(lái)很方便。而在Linux應(yīng)用程序的開(kāi)發(fā)中,常常直接在命令行使用gdb進(jìn)行調(diào)試,或者可以使用VSCode+gdb進(jìn)行調(diào)試。

[[403548]]

嵌入式軟件開(kāi)發(fā)中,最常用的調(diào)試方法就是:log打印調(diào)試法及在線調(diào)試。

開(kāi)發(fā)STM32時(shí),我們有IDE可以用,IDE中已經(jīng)集成有調(diào)試器,配合仿真器使用起來(lái)很方便。而在Linux應(yīng)用程序的開(kāi)發(fā)中,常常直接在命令行使用gdb進(jìn)行調(diào)試,或者可以使用VSCode+gdb進(jìn)行調(diào)試。

而在嵌入式Linux中,我們?nèi)绾螌?duì)開(kāi)發(fā)板上的arm程序進(jìn)行調(diào)試呢?

我們可以使用VSCode+gdb+gdbserver來(lái)調(diào)試我們arm開(kāi)發(fā)板上的arm程序。下面簡(jiǎn)單介紹一下使用方法,前提是開(kāi)發(fā)板與PC可以進(jìn)行無(wú)線/有線通信。相關(guān)文章:一次關(guān)于WiFi 驅(qū)動(dòng)移植的總結(jié)復(fù)盤(pán)

1、準(zhǔn)備arm格式的gdb及gdbserver工具

一般交叉編譯工具鏈里都包含有,如果沒(méi)有則需要自己下載gdb源碼進(jìn)行交叉編譯,gdb下載源碼下載鏈接:

  • http://www.gnu.org/software/gdb/download/

這里我使用的是交叉編譯工具鏈里的gdb及gdbserver,如:

2、創(chuàng)建launch.json文件并修改

我們需要?jiǎng)?chuàng)建vscode的launch.json文件并進(jìn)行一些修改:

其中需要修改"program",這是我們需要調(diào)試的程序,即我們交叉編譯好的程序。還需要添加如下兩個(gè)鍵值對(duì):

  1. "miDebuggerPath:"/opt/rv1126/bin/arm-linux-gnueabihf-gdb" 
  2.  
  3. "miDebuggerServerAddress":"192.168.3.12:9001" 

其中,miDebuggerPath表示的是arm格式gdb的路徑;miDebuggerServerAddress表示的是我們server端的地址,如:192.168.3.12為開(kāi)發(fā)板的ip,9001為端口號(hào),可自行設(shè)置,其范圍為:0~65536,0~1023 的端口一般由系統(tǒng)分配給特定的服務(wù)程序。

3、把gdbserver傳到開(kāi)發(fā)板上

我們需要交叉編譯器路徑下的gdbserver傳到開(kāi)發(fā)板上,如我這里放到開(kāi)發(fā)板的/usr/bin路徑下:

4、啟動(dòng)gdbserver

我們首先需要啟動(dòng)開(kāi)發(fā)板上的gdbserver,pc端才能連接進(jìn)行調(diào)試,格式為:

  1. gdbserver 開(kāi)發(fā)板ip:端口號(hào) 要調(diào)試的程序 

如:

5、啟動(dòng)vscode的gdb進(jìn)行調(diào)試

最后,啟動(dòng)vscode的gdb即可進(jìn)行調(diào)試。如:

本文轉(zhuǎn)載自微信公眾號(hào)「嵌入式大雜燴」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系嵌入式大雜燴公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: 嵌入式大雜燴
相關(guān)推薦

2022-07-22 12:45:39

GNU

2021-07-14 09:00:00

JavaFX開(kāi)發(fā)應(yīng)用

2022-12-07 08:42:35

2022-04-19 10:45:28

自動(dòng)化簽名鴻蒙app操作系統(tǒng)

2011-01-06 10:39:25

.NET程序打包

2024-03-18 18:07:38

VSCode插件文件

2021-08-02 07:35:19

Nacos配置中心namespace

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2020-05-15 08:07:33

JWT登錄單點(diǎn)

2021-03-12 10:01:24

JavaScript 前端表單驗(yàn)證

2021-12-15 08:49:21

gpio 子系統(tǒng)pinctrl 子系統(tǒng)API

2022-10-30 10:31:42

i2ccpuftrace

2021-01-19 09:06:21

MysqlDjango數(shù)據(jù)庫(kù)

2023-12-13 08:17:24

JPDAJavaDebug

2015-04-02 11:22:29

2021-02-26 11:54:38

MyBatis 插件接口

2011-02-22 13:46:27

微軟SQL.NET

2021-12-28 08:38:26

Linux 中斷喚醒系統(tǒng)Linux 系統(tǒng)

2022-01-08 20:04:20

攔截系統(tǒng)調(diào)用
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)