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 **    可以查看变量名。

原文地址:https://www.cnblogs.com/xaf-dfg/p/3435024.html