
在 gcc编译源代码时指定-g选项可以产生带有调试信息的目标代码,gcc可以为多个不同平台上帝不同调试器提供调试信息,默认gcc产生的调试信息是为 gdb使用的,可以使用-gformat 指定要生成的调试信息的格式以提供给其他平台的其他调试器使用.常用的格式有
-ggdb:生成gdb专 用的调试信息,使用最适合的格式(DWARF 2,stabs等)会有一些gdb专用的扩展,可能造成其他调试器无法运行.
-gstabs:使用 stabs格式,不包含gdb扩展,stabs常用于BSD系统的DBX调试器.
-gcoff:产生COFF格式的调试信息,常用于System V下的SDB调试器
-gxcoff:产生XCOFF格式的调试信息,用于IBM的RS/6000下的DBX调试器
-gdwarf- 2:产生DWARF version2 的格式的调试信息,常用于IRIXX6上的DBX调试器.GCC会使用DWARF version3的一些特性.
可 以指定调试信息的等级:在指定的调试格式后面加上等级:
如: -ggdb2 等,0代表不产生调试信息.在使用-gdwarf-2时因为最早的格式为-gdwarf2会造成混乱,所以要额外使用一个-glevel来指定调试信息的 等级,其他格式选项也可以另外指定等级.
gcc可以使用-p选项指定生成信息以供porf使用.
1、在“工具”-》编译选项-》"Add following commands when calling complier"下面的编辑框里加上:-g3
2、在下面的"Add these commands to the linker command line" 下的编辑框上加上:-g3
3、转到programs页,把gcc行修改为:gcc.exe -D__DEBUG__
4、把g++行修改为g++.exe -D__DEBUG__ ,点击ok。
重新编译,就能调试了。
Dev C++调试程序时左侧没有显示信息
win10, Dev C++ 5.11 IDE.
之前调试程序时,用鼠标移到变量,不用点击就会在左侧的 ”调试“ 栏里自动显示其值。
但是现在:如图,
调试程序时,用鼠标移到相关代码变量时,左侧的 “调试” 栏里没有自动生成相应的信息。
为什么?
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)