• gdb 的使用 problem &solution


    problem1:  no debugging symbols found

    -g

    gcc -c -g *.c

    gcc -o exe *.o

      //要编译时加上 “-g”,对*.o文件 g++ -g 生成一个可执行文件,可执行文件不能够使用gdb。。只有使用.cpp 通过gcc 生成才能呢个调试。

    “   引用。。

    我曾经遇到过这种问题。。。我是用.o文件gcc -g 生成一个可执行文件。但是可执行文件是不能够使用gdb的。。
    只有使用.c通过gcc生成才能够进行调试的。。。。
    gcc -g *.c -o *  这个是不能生成可gdb的文件的。。。

    顶~~~~~~~~~~~~~
    你在用gcc -c 时加 -g 选项
    在gcc *.o -o * 时不用加 -g 选项
    就好了          “

    但是后来我这样改了,还是出现以上错误,最后发现我的makefile文件就算改过了,但是源程序文件没有变化,make命令就没有变化,我先删除main(可执行文件),重新make就不出这个错了。

     http://www.cppblog.com/heidaizx/archive/2009/11/13/33582.html

    比如 文件 a.cpp

    要先 g++ -g a.cpp -o a.o

    再 gdb a.o

    进入gdb 环境。。。

    break 175

    run

    next  (相当于windows  vc调试时的F10)   简写 n

    step(相当于windows  vc的F11)

    单步调试时如果按下 c(continue),相当于F5.运行到下一断点。

    调试过程中 print **    可以查看变量名。

  • 相关阅读:
    组合模式
    迭代器模式
    模板方法模式
    外观模式
    适配器模式
    运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist
    idea maven 打包 引用本地jar
    centos7 安装redis
    centos7 防火墙
    linux 常用命令
  • 原文地址:https://www.cnblogs.com/xaf-dfg/p/3435024.html
Copyright © 2020-2023  润新知