如何设置gcc的编译选项,使得生成的可执行文件可以更方便地用gdb来调试?
编译参数,使程序不优化,并生成尽可能多的调试信息。
1.-g,生成调试信息,3代表调试级别。此级别生成更多其他调试信息。例如,级别3可以调试宏。
2.-o指定编译器的优化级别。优化级别越高,执行效率越高。但是,优化会改变原有的程序结构,使程序集难以理解,使源代码与程序集不对应,断点地址与源代码不对应等-o0意味着程序不会得到优化。
devc调试的时候显示项目没有调试信息,您想打开项目调试选项并重新生成吗?
1.在“工具”、“编译选项”、“调用编译器时添加以下命令”下的编辑框中添加-g32,在“将这些命令添加到链接器命令行”下的编辑框中添加-g33。转到“程序”页并将gcc行更改为:gcc.exe文件-调试4。将第g行更改为g.exe-ddebug单击“确定”。重新编译和调试。用devc调试程序时,左边没有信息
在visualstudio中,我们可以生成程序的调试版本和发布版本,用cmake也可以达到同样的效果。项目生成的可执行文件的调试版本需要调试信息,不需要优化;发布版本不需要调试信息,但需要优化。这些特性是由gcc/g中编译时的参数决定的。如果优化级别设置为最高,则需要设置-o3,最低的为-o0,即不进行优化。添加调试信息的参数是-g-ggdb。如果不添加此参数,调试信息将不会包含在生成的二进制文件中
原文标题:gcc调试命令 如何设置gcc的编译选项,使得生成的可执行文件可以更方便地用gdb来调试?,如若转载,请注明出处:https://www.saibowen.com/wenda/18295.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。