1. 程式人生 > >GDB+gdbserver 編譯安裝及qtcreator除錯

GDB+gdbserver 編譯安裝及qtcreator除錯


一、首先要做以下準備工作:
(1)主機上安裝了交叉編譯工具。
(2)下載GDB安裝包,地址:http://ftp.gnu.org/gnu/gdb/
             http://ftp.gnu.org/gnu/gdb/gdb-7.8.tar.xz

二、安裝GDB
(1)解壓原始碼包

    $ tar -zxvf ./source/gdb-7.8-tar.gz
    $ cd gdb-7.8

(2)配置
export PATH=$PATH:/root/board/tools/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin
# export PATH=$PATH:/opt/arm-linux-gnueabi-4.8.3/bin
=============apt-get install python
=============apt-get install python-dev
./configure --prefix=/opt/gdb78-gcc --target=arm-linux-gnueabihf --with-python --with-sysroot
# ./configure --prefix=/opt/gdb-forlinx --target=arm-linux-gnueabi --with-python

--with-sysroot目的是讓這個gcc在編譯的時候預設到{--with-sysroot}/usr/include下找核心和庫標頭檔案
配置很簡單,只需要配置--target和--prefix,指定目標板體系結構和安裝路徑即可。
注意 export PATH=$PATH:/root/board/tools/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin           # 交叉編譯器路徑
(3)編譯

    $ make -j4

(4)安裝

    $ make install

編譯結果在/opt/gdb78-gcc目錄下,arm-linux-gnueabihf-gdb既是GDB工具。

三、編譯gdbserver

gdbserver原始碼包含在GDB原始碼中,所以繼續以上操作即可。
(1)進入gdbserver原始碼路徑

    $ cd gdb-7.8/gdb/gdbserver

(2)指定編譯器

    $ export PATH=$PATH:/root/board/tools/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin

    $ ./configure --host=arm-linux-gnueabihf

(3)編譯

    $ make -j4

注意:gdbserver不需要make install。
編譯生成的gdbserver是在目標板上可執行的程式,複製到目標板中即可使用。

四、測試


將編譯生成的 gdbserver 複製到目標板/bin上,修改執行許可權,然後測試一個簡單的usrapp程式:

$ cp gdbserver /bin                                  # 複製gdbserver到命令專用目錄
$ chmod +x /bin/gdbserver                            # 增加為可執行許可權
$ gdbserver 192.168.1.108:1111 usrapp -qws                 # 啟動除錯,等待主機連線

Process helloworld created; pid = 698
Listening on port 1111
如上,gdbserver 已經執行,並偵聽指定的1111埠。

這時切換到宿主機的控制檯,執行

[[email protected]] arm-linux-gnueabihf-gdb usrapp

(gdb) target remote 192.168.1.100:1111



=================================
cd /usr/apps/
gdbserver 192.168.1.108:1111 usrapp -qws

=================================
arm-linux-gnueabihf-gdb usrapp


=========================參考文件=======================================
http://www.myir-tech.com/bbs/forum.php?mod=viewthread&tid=28
https://blog.csdn.net/Chris_Tsai/article/details/52389943?locationNum=12&fps=1
https://blog.csdn.net/yj4231/article/details/7829686

相關推薦

GDB+gdbserver 編譯安裝qtcreator除錯

一、首先要做以下準備工作:(1)主機上安裝了交叉編譯工具。(2)下載GDB安裝包,地址:http://ftp.gnu.org/gnu/gdb/             http://ftp.gnu.org/gnu/gdb/gdb-7.8.tar.xz二、安裝GDB(1)解壓原

vsftpd 編譯安裝 隱藏版本號

str 本地服務 沒有 版本號 取數據 賦值 其他 映射 自動啟動 環境:Redhat Enterprise Linux AS 4.0 update2(i386) 不提示,均表示以root權限執行。 [註:]//為註釋符,如“// 建立MySQL組”,即為一句註釋。 我

Linux中如何恢復rm命令誤刪除的文件之extundelete編譯安裝使用

可用 並且 地址 cat inode res 丟失 lin 所在 1、下載extundelete包,安裝依賴 我用的是Centos系統,在安裝extundelete之前需要安裝e2fsprogs,e2fsprogs-libs,e2fsprogs-devel。 yum in

nginx源碼編譯安裝配置文件說明

nginx源碼安裝nginx源碼編譯安裝 安裝nginx的依賴包(pcre-devel openssl-devel) [root@anuo ~]# yum install pcre-devel openssl-devel -y 創建管理用戶 nginx [root@anuo ~]# useradd -s /s

Nginx編譯安裝編譯參數講解

支持 assembler 臨時文件 files sha cached erro mp4 工具 實驗環境說明:操作系統:Centos 7 64位Nginx版本:Nginx 1.12.2 編譯安裝前的準備:安裝Nginx編譯安裝需要依賴的一些包yum install gcc g

Nginx編譯安裝介紹

nginx簡介 nginx時一款輕量級的Web伺服器、反向代理伺服器及郵件代理伺服器; nginx的特點是佔有記憶體少,併發能力強,穩定,功能豐富。 nginx優點 高併發連線:能夠支撐5萬併發連線(官方測試),實際生產環境中支撐2-3萬併發連線數

mysql編譯安裝常用操作

1.3 安裝相關包 1.3.1 cmake軟體 cd /home/oldboy/tools/ tar xf cmake-2.8.8.tar.gz cd cmake-2.8.8 ./configure #CMake has bootstrapped.  Now run gmake. gmak

MAC OS 下protobuf 2.6.1 版本編譯安裝proto型別檔案編譯

由於工程中proto語法採用的是2.0的,所以選擇安裝2.6.1版本的protobuf。(3.0和2.0語法不同,如果安裝3.0以上版本的protobuf,在編譯的時候應該需要增加啥~~~) 編譯安裝步驟: 1. 安裝 protobuf 依賴項, 其依賴於autoconf、 a

MySQL免編譯安裝登入(5.6.36)

一、下載MySQL 5.6.36免編譯安裝包並上傳至 /usr/local/src 目錄(也可以使用wget命令直接下載至該目錄) 下載地址 https://yunpan.360.cn/surl_ymCGfFYt2Ya 二、解壓縮 [[email protected] src]# tar zx

Bochs原始碼安裝執行除錯

最近在讀《Orange's一個作業系統的實現》,開始部分介紹了虛擬機器Bochs的安裝及除錯,本文把折騰過程做下記錄。 作業系統:Ubuntu10.04(最新的版本老是有問題) 軟體版本:bochs 2.3.5(和書中保持一致) 1 更新Ubuntu 由於ubuntu 1

Nginx原始碼編譯安裝實現負載均衡

Nginx (engine x) 是一個高效能的HTTP和反向代理服務,工作在網路的7層之上,可以針對http應用做一些分流的策略, 比如針對域名、目錄結構,它的正則規則比HAProxy更為強大 和靈活,這也是它目前廣泛流行的主要原因之一,Nginx單憑 這點可利用的場合就

mysql編譯安裝報錯詳解

本次編譯安裝版本是mysql-5.5.61 mysql下載連線 安裝mysql,我們需要提前建立好mysql使用者,並且禁止mysql登入伺服器,不建立家目錄。 useradd mysql -M -s /sbin/nologin id mysql id my

Redis(1):原始碼編譯安裝入門

CentOS 6.9redis-3.0.7.tar.gz1.解壓 tar -zxvf redis-3.0.7.tar.gz 2.安裝    cd redis-3.0.7    make        編譯後在Redis原始碼目錄的src資料夾中可以找到若干個可執行程式make

彙總(之四):交叉編譯工具鏈arm-none-linux-gnueabi-, Qt交叉編譯安裝和移植,Qt桌面版編譯安裝QTcreator安裝和配置

4. QTcreator2.5.2安裝和配置 首先,從官網下載了qt-creator-linux-x86-opensource-2.5.2.bin檔案。 下面的安裝就比較簡單了,首先更改檔案屬性,使它可執行。 chmod u+x qt-creator-linux

rzsz的編譯安裝SecureCR下Zmodem傳輸用法

rz,sz是Linux/Unix同Windows進行ZModem檔案傳輸的命令列工具 優點:比ftp命令方便,而且伺服器不用開啟FTP服務。 SecureCR下的檔案傳輸協議有ASCII、Xmodem、Zmodem 常見的傳輸協議有以下幾種: ASCII

MySQL5.7.17 編譯安裝二進位制安裝詳解

MySQL 的安裝方式有很多,最常見的就是編譯安裝和二進位制安裝; 在這裡我將兩種安裝方式都介紹一下,自由選擇; 首先我們來看一下編譯安裝的步驟: 首先,到官方網站中下載原始碼包; https://dev.mysql.com/downloads/mysql 選擇

Mysql5.7版本編譯安裝配置

配置yum安裝方式 1、配置本地yum源 1 vim /etc/yum.repos.d/rhel-source.repo 2 [rhel-source] 3 name=Red Hat Enterprise Linux $releasever - $basearch - Source

Spark叢集安裝Streaming除錯

安裝前置條件 1.         系統需要安裝the Oracle Java Development Kit(not OpenJDK),安裝jdk1.7以上,下載目錄:http://www.oracle.com/technetwork/java/javase/downlo

編譯安裝執行單目ORBSLAM2在Ubuntu14.04

前言 ORBSLAM2是一個非常適合SLAM入門學習的開源工程。它支援單目、雙目、RGB-D使用,可以計算攝像機的軌跡,並且重建稀疏的3D地圖。 官網有原始碼和配置教程,地址是 1 安裝必要工具 首先,有兩個工具是需要提前安裝的。即cmake和Git。 sudo

nginx(二) nginx編譯安裝 配置WEB服務

nginx(二) nginx編譯安裝 及 配置WEB服務       在前面《nginx詳解》文章中,我們對nginx有了一個基本的認識:包括應用場景、nginx基本架構、功能特性、併發模型以及配置說明等,我們知道nginx應用比較多的場景是WEB伺服器和反向代理伺服器。下面