建立
arm+linux應用程式
除錯環境
gdb+gdbserver+insight環境的搭建
配置安裝gdb+gdbser
$ tar jxvf gdb-6.6.tar.bz2
$ cd x/gdb
$ ./configure --target=arm-linux --prefix=/usr/local/arm-gdb –v
--prefix
用於指定安裝路徑
--target=arm-linux
用於制定目標環境的編譯
編譯,$ make
安裝,$ sudo make install
之後在x/bin資料夾下生成arm-linx-gdb可執行檔案.
$ cd gdbserver
配置檔案:
$ ./configure --target=arm-linux --host=arm-linux
(--target=arm-linux
表示目標平台,
--host
表示主機端執行的是
arm-linux-gdb
,不 需要配置
—prefix
,因為gdbserver
不在主機端安裝執行)
$ make cc=/usr/local/arm/2.95.3/bin/arm-linux-gcc
(這一步要指定你自己的
arm-linux-gcc
的絕對位置,相對的通常不行,提示
make: arm-linux-gcc: command not found
,如果用的相對路徑,即直接賦值
arm-linux-gcc
,可採取
make
時傳遞引數,也可以直接修改
gdbserver
目錄下的
makefile
檔案中的環境變數
cc)之後在
gdbserver
目錄下生成
gdbserver
可執行檔案
.可將它通過
nfs拷貝到目標板上執行.如:
mount –t nfs host:/friendly-arm/root /mnt –o ro,nolock
這裡如果沒有加上選項
–o ro,nolock
無法正常
mount.
@在目標板上執行
(1)將要除錯的檔案和
gdbserver
放在同乙個資料夾下
vivi> ./gdbserverhost:port 「
待除錯檔案」(
2)在主機段執行
arm-linux-gdb 「
待除錯檔案」(
gdb)
target remote client:port
連線客戶機
注意:(1)在目標機上通過
gdbserver
除錯的程式在
gdbserver
執行的時候已經執行了,並且其中不包含除錯的符號資訊,所以要想加入符號資訊只能通過
host
執行的gdb
加入含有除錯資訊的可執行檔案。
(2)剛開始的時候將
./gdbserver
libthread_db.so.1
庫檔案。但是發現
lib中並沒有該檔案,只有乙個鏈結檔案,通過
file
命令檢視
:[root@localhost lib]# file libthread_db.so.1
libthread_db.so.1: symbolic link to libthread_db-1.0.so
發現該鏈結檔案鏈結到
libthread_db-1.0.so
該庫檔案,於是將檔案
libthread_db-1.0.so
拷貝到根檔案系統,然後改名為
libthread_db.so.1
,之後gdbserver
能正常執行了.
3.安裝
gdb圖形除錯介面
insight
(gtk
軟體包)
版本為:
insight-6.6.tar.bz2
$ tar–jxvfinsight-6.6.tar.bz2
$ cd insight-6.6
配置檔案: $
./configure --target=arm-linux --enable-sim --prefix=/usr/local/arm/insight
配置選項的解釋同上.
編譯,$ make
安裝,$ sudomakeinstall
注意:在第一次編譯的時候老是出現問題,最後發現自己在裝
redhat9.0
的時候為了節省磁碟空間沒有安裝
gtk軟體包,所以編譯的時候會出錯。但是在裝了之後,再次編譯
insight-6.8.tar.bz2
版本,出現了
x引數未初始化的錯誤。然後重新換成
insight-6.6.tar.bz2
版本,編譯成功,安裝. 關於
gdb遠端除錯參見:
剩下需要解決,就是
busybox
在minicom
下如何終止程式的執行。
ARM Linux應用程式not found 問題
今天,移植 openssh portable 到imx6ul板子上,交叉編譯ok。放板子上執行,除錯。root imx6ulevk mnt nfs ssh ssh keygen sh ssh keygen not found root imx6ulevk mnt nfs ssh scp sh scp...
ARM Linux應用程式除錯環境
建立arm linux應用程式除錯環境 gdb gdbserver insight環境的搭建 2.配置安裝gdb gdbser tar jxvf gdb 6.6.tar.bz2 cd x gdb configure target arm linux prefix usr local arm gdb ...
建立Lapis應用程式
如果您尚未閱讀,請閱讀入門指南,了解有關建立新專案骨架的資訊以及openresty,nginx配置和lapis命令的詳細資訊。您可以在當前目錄中通過執行以下命令啟動乙個新的lua專案 lapis new lualocal lapis require lapis return welcome to l...