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

    文章

    10992

    浏览量

    206744
  • 调试
    +关注

    关注

    7

    文章

    527

    浏览量

    33625
  • 代码
    +关注

    关注

    30

    文章

    4556

    浏览量

    66812
  • gdb
    gdb
    +关注

    关注

    0

    文章

    60

    浏览量

    13162
收藏 人收藏

    评论

    相关推荐

    使用GDB调试Linux应用程序

    本篇讲解使用GDB调试Linux应用程序,以下以 `hellowld.c` 为例介绍 GDB调试入门。
    发表于 06-27 15:48 338次阅读

    如何搭建嵌入式LinuxGDB调试环境

    文章目录介绍GDB简介交叉编译器的gdb介绍在学习单片机的时候我们可以通过集成式IDE 来进行调试,比如MDK、IAR 等。在嵌入式linux
    发表于 11-05 06:03

    ubuntu下GDB调试GDB简介

    操作系统GDB可以运行在UNIX、Linux甚至Microsoft Windows。GDB可以调试C、C++、Objective-C、Pa
    发表于 12-21 08:20

    Linux中如何使用gdb调试C程序?

    通俗的讲,GDB 可以让你看到程序在执行过程时的内部流程,并帮你明确问题的所在。我们将在下一节通过一个有效的示例来讨论 GDB 调试器的用法,但在此之前,我们先来探讨一些之后对你有帮助的基本要点。
    发表于 04-28 15:37 1563次阅读

    嵌入式LinuxGDB调试环境建立

    嵌入式LinuxGDB调试环境由Host和Target两部分组成,Host端使用arm-linux-gdb,Target Board端使用gdbserver。这样,应
    发表于 04-02 14:33 396次阅读

    嵌入式Linux系统GDB远程调试的实现

    得反而更快些),hello和gdbserver都是位于Linux根目录下,把主机根目录挂在到开发板的/tmp 目录下。 要进行gdb调试,首先要在目标
    发表于 04-02 14:38 333次阅读

    Linux应用的GDB调试的原理及过程分析

    GDB调试是应用程序在开发板上运行,然后在PC机上对开发板上得应用程序进行调试,PC机运行GDB,开发板上运行GDBServer。在应用程序
    发表于 03-05 09:44 3189次阅读
    <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 2003次阅读
    <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>教程

    【嵌入式Linux学习】调试利器之GDB快速入门指南

    查询、CPU寄存器查询、 甚至是反汇编来定位问题。同样的,在嵌入式Linux的开发环境下,也有能够实现类似功能的调试器,那就是GDB(GNU debugger)。 它是一个由GNU开源组织发布
    发表于 11-02 14:06 12次下载
    【嵌入式<b class='flag-5'>Linux</b>学习】<b class='flag-5'>调试</b>利器之<b class='flag-5'>GDB</b>快速入门指南

    嵌入式Linux GDB是什么

    函数、设置断点、查看变量等等,它是 UNIX/LINUX 操作系统下强大的程序调试工具。 gdb 支持多种语言
    的头像 发表于 07-27 16:29 457次阅读
    嵌入式<b class='flag-5'>Linux</b> <b class='flag-5'>GDB</b>是什么

    GDB调试何进行变量查看

    变量查看 变量查看: 最常见的使用便是使用print(可简写为p)打印变量内容。 以上述程序为例: gdb helloworld break helloworld.c:17
    的头像 发表于 09-26 16:17 845次阅读

    linuxgdb调试遇到函数调用怎么办?

    linuxgdb调试遇到函数调用怎么办? 在Linux上使用GDB调试时,遇到函数调用是一个常
    的头像 发表于 01-31 10:33 198次阅读

    如何使用linuxgdb调试python程序

    如何使用linuxgdb调试python程序  在Linux下,可以使用GDB(GNU调试
    的头像 发表于 01-31 10:41 474次阅读