= argc) { printf ( "Helloworld.n" ); } printf ( "Hello World %s!n" ,argv[ 1 ]); for (i = 1 ; i 100 ; i++) { result += i; } printf ( "result = %dn" , result ); return 0 ;} 編譯時加上 -g 參數: gcc helloworld.c -o hellowrld -g 啟動調試 $ gdb helloWorldGNU gdb (GDB) Red Hat Enterprise Linux 8.2-12.el8 Copyright (C) 2018 Free Software Foundation, Inc.License GPLv3+: GNU GPL version 3 or later //gnu.org/licenses/gpl.html > This is free software: you are free to change and redistribute it.There is" />

那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux系統中如何進行GDB調試

麥辣雞腿堡 ? 來源:嵌入式Linux充電站 ? 作者:Vincent ? 2023-10-04 15:52 ? 次閱讀

編寫代碼

#include < stdio.h >

int main(int argc, char **argv)
{
    int i;
    int result = 0;

    if(1 >= argc)
    {
        printf("Helloworld.n");
    }
    printf("Hello World %s!n",argv[1]);

    for(i = 1; i <= 100; i++)  {
        result += i;
    }

    printf("result = %dn", result );

    return 0;
}

編譯時加上 -g 參數

gcc helloworld.c -o hellowrld -g

啟動調試

$ gdb helloWorld
GNU gdb (GDB) Red Hat Enterprise Linux 8.2-12.el8
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later < http://gnu.org/licenses/gpl.html >
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
< http://www.gnu.org/software/gdb/bugs/ >.
Find the GDB manual and other documentation resources online at:
    < http://www.gnu.org/software/gdb/documentation/ >.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from helloworld...done.
(gdb) run                  < ----------------------------- 不帶參數運行
Starting program: /home/zhuzhg/helloworld
Missing separate debuginfos, use: yum debuginfo-install glibc-2.28-101.el8.x86_64
helloworld.
result = 5050
[Inferior 1 (process 1069013) exited normally]
(gdb) run China            < ----------------------------- 帶參數運行
Starting program: /home/zhuzhg/helloworld China
Hello World China!
result = 5050
[Inferior 1 (process 1071086) exited normally]
(gdb)
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11345

    瀏覽量

    210404
  • 調試
    +關注

    關注

    7

    文章

    589

    瀏覽量

    34064
  • 代碼
    +關注

    關注

    30

    文章

    4828

    瀏覽量

    69055
  • gdb
    gdb
    +關注

    關注

    0

    文章

    60

    瀏覽量

    13349
收藏 人收藏

    評論

    相關推薦

    使用GDB調試Linux應用程序

    本篇講解使用GDB調試Linux應用程序,以下以 `hellowld.c` 為例介紹 GDB調試入門。
    發表于 06-27 15:48 ?486次閱讀

    嵌入式LinuxGDB調試環境建立

    嵌入式LinuxGDB調試環境由Host和Target兩部分組成,Host端使用arm-linux-gdb,Target Board端使用gdbserver。這樣,應
    發表于 04-02 14:33 ?545次閱讀

    嵌入式Linux系統GDB遠程調試的實現

    stub是嵌入式系統的一段代碼,作為宿主機GDB和目標機調試程序間的一個媒介而存在。 就 目前而言,嵌入式Linux
    發表于 04-02 14:38 ?441次閱讀

    Linux應用的GDB調試的原理及過程分析

    GDB調試是應用程序在開發板上運行,然后在PC機上對開發板上得應用程序進行調試,PC機運行GDB,開發板上運行GDBServer。在應用程序
    發表于 03-05 09:44 ?3459次閱讀
    <b class='flag-5'>Linux</b>應用的<b class='flag-5'>GDB</b><b class='flag-5'>調試</b>的原理及過程分析

    linux編程GDB調試功能

    GDB是一套字符界面的程序集,可以用它在linux調試C和C++程序,它提供了以下的功能:
    的頭像 發表于 05-05 23:49 ?2324次閱讀
    <b class='flag-5'>linux</b>編程<b class='flag-5'>GDB</b><b class='flag-5'>調試</b>功能

    嵌入式Linux GDB調試環境搭建與使用

    這里寫目錄標題簡介在Ubuntu下簡單體驗GDB嵌入式GDB移植GDB 常用命令參考網絡通信設置注意事項簡介Linux系統常用
    發表于 11-01 17:59 ?8次下載
    嵌入式<b class='flag-5'>Linux</b> <b class='flag-5'>GDB</b><b class='flag-5'>調試</b>環境搭建與使用

    Linux嵌入式 gdb VSCode圖形化調試教程

    文章目錄介紹GDB簡介交叉編譯器的gdb介紹在學習單片機的時候我們可以通過集成式IDE 來進行調試,比如MDK、IAR 等。在嵌入式linux
    發表于 11-02 12:21 ?15次下載
    <b class='flag-5'>Linux</b>嵌入式 <b class='flag-5'>gdb</b> VSCode圖形化<b class='flag-5'>調試</b>教程

    OpenHarmony系統使用gdb調試init

    。如果能使用gdb調試init,會極大的提高定位效率。 本文簡單描述了一下L2二次啟動的系統如何使用gdb調試init 首先將
    的頭像 發表于 12-26 12:10 ?978次閱讀

    嵌入式Linux GDB是什么

    函數、設置斷點、查看變量等等,它是 UNIX/LINUX 操作系統下強大的程序調試工具。 gdb 支持多種語言
    的頭像 發表于 07-27 16:29 ?802次閱讀
    嵌入式<b class='flag-5'>Linux</b> <b class='flag-5'>GDB</b>是什么

    在ubuntu調試GDB

    的 gcc 編譯器即可,注意需要加 -g 選項,才能使用 gdb 調試 arm-linux-gnueabihf-gcc gdbtest .c -o gdbtest -g //編譯測試程序,注意-g 選項
    的頭像 發表于 07-27 16:31 ?1125次閱讀
    在ubuntu<b class='flag-5'>中</b><b class='flag-5'>調試</b><b class='flag-5'>GDB</b>

    在板子調試GDB的方法

    系統,比如 ubuntu、centos 等,我們可以直接運行 gdb調試程序。但是嵌入式芯片性能一般比較弱,所以直接在嵌入式系統
    的頭像 發表于 07-27 16:37 ?1395次閱讀
    在板子<b class='flag-5'>中</b><b class='flag-5'>調試</b><b class='flag-5'>GDB</b>的方法

    GDB調試何進行變量查看

    argc $3 = 1(gdb) print str $4 = 0x4006c8 "Hello World" 查看內存: examine(簡寫為x)可以用來查看內存地址的值。語法如下: x / [n] [f] [u] addr 其中: 單元類型常見有如下: 示例: (
    的頭像 發表于 09-26 16:17 ?2027次閱讀

    GDB調試工具的原理

    了。 1.2 執行中進程調試 如果想對一個已經執行的進程進行調試,那么就要在gdb這個父進程調用ptrace(PTRACE_ATTA
    的頭像 發表于 11-09 17:04 ?1004次閱讀
    <b class='flag-5'>GDB</b><b class='flag-5'>調試</b>工具的原理

    linuxgdb調試遇到函數調用怎么辦?

    。 要順利進行函數調用的調試,首先需要準備好代碼和符號表。在編譯代碼時,需要加上 `-g` 參數來生成調試信息。這樣編譯器會在可執行文件嵌入符號表,以供
    的頭像 發表于 01-31 10:33 ?762次閱讀

    如何使用linuxgdb調試python程序

    如何使用linuxgdb調試python程序? 在Linux下,可以使用GDB(GNU調試
    的頭像 發表于 01-31 10:41 ?2740次閱讀
    威尼斯人娱乐代理注| 永利高百家乐信誉| 星期8百家乐娱乐城| 真人百家乐官网送钱| 优博| 百家乐技术辅助软件| 澳门百家乐官网庄闲和| 大发888手机版官网| 永利高百家乐信誉| 玩百家乐官网如何看路| 在线水果机游戏| 百家乐代打公司| 百家乐官网平注赢钱法| 利来国际娱乐网站| 91百家乐的玩法技巧和规则| 百家乐官网博娱乐网提款速度快不 | 利高百家乐官网的玩法技巧和规则 | 试玩百家乐1000| 巴宝莉百家乐官网的玩法技巧和规则| 如东县| 六合彩开奖历史记录| 百家乐园首选| 百家乐最新打法| 百家乐官网网站程序| 张家港市| 百樂坊娱乐| 尚品棋牌注册| 新大发888娱乐城| 博彩百家乐的玩法技巧和规则| 百家乐德州扑克轮盘| 新世百家乐官网的玩法技巧和规则| 开心8百家乐官网娱乐城| 沙巴娱乐| 金昌市| 孝昌县| 登封市| 铁力市| 百家乐官网的庄闲概率| 南阳市| 百家乐官网娱乐城返水| 东至县|