歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 搭建JLink+Insight在Linux環境下的ARM調試環境

搭建JLink+Insight在Linux環境下的ARM調試環境

日期:2017/2/28 14:51:55   编辑:Linux教程

JLink是SEGGER 推出的針對arm處理器的USB調試下載工具,其在Windows環境下的軟件支持完善,在Linux下官方給出的beta軟件包裡有JLinkExe和JLinkGDBServer兩個工具。在給項目搭建環境時首先想到的是一款開源的調試代理軟件OpenOCD,功能強大但因JLink的二次開發好像還要購買授權,接口不完全開放,因此對JLink的支持可能還不太成熟,在搭建過程中遇到不少問題,最後在我們的項目中就使用GNU的Arm交叉調試器配合JLinkGDBServer進行軟件調試,配合RedHat開發的一個集成了gdb 的可視化的調試工具Insight,實現和一些IDE一樣的圖形化調試效果。本文重點介紹JLink和Insight的安裝和配置中遇到的問題,交叉編譯工具的安裝從略。

0,安裝GNU的Arm交叉開發工具鏈;

1,安裝SEGGER官方發布的Linux版本的JLink工具,下載後安裝方法見自述文檔;

(安裝過程中,執行ldconfig更新符號表時提示/sbin/ldconfig.real:/usr/lib/libjlinkarm.so.4 is not a symbolic link錯誤,忽略,繼續安裝)

2,下載當前最新的insight-6.8a版本,編譯過程如下:

./configure--target=arm-linux --prefix==/opt/insight_arm

(/opt/insight_arm是我的安裝目錄,可以根據自己情況變化)

make

(其中會報錯終止繼續編譯,這時打開gdb/Makefile,將WERROR_CFLAGS = -Werror的-Werror注釋掉,即修改為WERROR_CFLAGS= #-Werror,然後返回軟件包根目錄執行make,注意gdb目錄下的Makefile是編譯過程中產生的)

使用超級用戶權限執行:

makeinstall

3,鏈接JLink到主機的USB接口,啟動JLinkGDBServer;

4,運行arm-linux-insight如果出現如下錯誤:

Tk_Init failed: Can't find a usable tk.tclin the following directories:

/opt/insight_arm/share/tk8.4 /opt/insight_arm/lib/tk8.4 /opt/lib/tk8.4/opt/insight_arm/library /opt/library /opt/tk8.4.1/library /tk8.4.1/library

/opt/insight_arm/share/tk8.4/tk.tcl: noevent type or button # or keysym

no event type or button # or keysym

while executing

"bind Listbox <MouseWheel> {

%W yview scroll [expr {- (%D / 120) * 4}] units

}"

...

將/opt/insight_arm/share/tk8.4/listbox.tcl的182行附近和/opt/insight_arm/share/tk8.4/text.tcl的461行附近的如下內容注釋掉:

182 #bind Listbox <MouseWheel> {

183 # %W yview scroll [expr {- (%D / 120) * 4}] units

184 #}

5,現在再運行arm-linux-insight,在菜單項Run->Connect to target中配置鏈接:

6,鏈接後JLinkGDBServer會在終端打印鏈接信息,如上圖。

7,遠程GDB的使用見JLinkGDBServer和Insight調試環境使用篇。

Copyright © Linux教程網 All Rights Reserved