zoukankan      html  css  js  c++  java
  • 使用gcc编译gdb调试

    gcc

    在linux系统中,默认是没有安装gcc编译器的,可以通过命令

    rpm -q | grep gcc

     来查看。安装命令为:

    yum -y install gcc

    安装后,编写一个.c结尾的文件。

    gcc test.c

     就会默认输出一个a.out的输出文件,这个输出文件就是可执行文件。

    如果加上-o选项,则可以自定目标文件。

    gcc -o test test.c  

    test就是它的可执行文件。

    一般都默认加上-Wall 选项,可以自动提示一些出错警告的信息。

    gcc -Wall -o test test.c

    gbd

    以上就是常用的gcc相关知识了。下面就是它的调试,调试通常使用gdb。在编译的时候需要加上选项-ggdb3选项

    gcc -ggdb3 -Wall -o test test.c

    这样在没有出错的情况下

    gdb test

    就进入调试窗口

    输入下面命令可以进行如下的操作:

    break 设置断点

    break 21 在第21行设置断点

    break main 在main函数处设置断点

    break test 在函数test处设置断点

    step /  s  下一步,直接执行下一条程序

    continue / cont 下一段,如果遇到函数,不会进入函数,逐过程,有点类似VS里面的F10

    run 运行

    finish 结束调试

    tbreak设置临时断点

    print / p 显示某个变量的值

    p *array@len 输出数组

    p i 输出i的值

    enable 恢复失效的断点

    disable 使断点失效

    clear 清除断点

    backtrace / bt 查看堆栈信息

    相关的输出格式

    x 十六进制格式
    d 十进制格式
    u 十六进制无符号
    o 八进制显示
    t 二进制显示
    a 十六进制显示
    c 字符格式显示
    f 浮点数格式显示
  • 相关阅读:
    201403-1
    201312-5 I’m stuck!
    201312-4
    201312-3
    201312-2 ISBN号码
    深度学习-李宏毅PPT总结
    梯度下降
    离散时间信号与系统-频域:5
    离散时间信号与系统-时域:4
    离散时间信号与系统-时域:3
  • 原文地址:https://www.cnblogs.com/xing901022/p/3698097.html
Copyright © 2011-2022 走看看