= 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次閱讀
    喜达百家乐的玩法技巧和规则| 百家乐官网网哪一家做的最好呀| 东莞水果机遥控器| 百家乐官网套利| 百家乐官网赌术大揭秘| 澳门百家乐真人版| 滕州市| 百家乐任你博赌场娱乐网规则| 百家乐官网规律打法| 大发888 打法888 大发官网| 大中华百家乐官网的玩法技巧和规则| 宁河县| 大发888bocai官方下载| 正规百家乐官网平注法口诀| 波音百家乐官网网上娱乐| 百家乐桌套装| 百家乐怎么才赢| 宝马会百家乐官网现金网| 皇家一号娱乐城| 百家乐第三张规则| 杨公风水24山分金水法| 百家乐官网百姓话题| 皇冠在线娱乐城| 大发888娱乐城出纳| 百家乐五星宏辉怎么玩| 百家乐官网试玩1000元| 马边| 娱网棋牌大厅下载| 百家乐台布哪里有卖| 线上百家乐官网怎么玩| 正定县| 百家乐官网平玩法lm0| 德州扑克筹码定做| 大发888快速提现| 大发888娱乐场下载zhidu| 大发888娱| 大发888海立方| 网上百家乐试| 百家乐微笑打法| 15人百家乐桌布| 电脑版百家乐下注技巧|