问题描述:
ubuntu下eclipse cdt单步调试C++ Release程序失败,报错“No source available for "main() at 0x40179a”;【见下图】
原因分析:
Release版本的程序,默认不生成调试信息,且默认开启编译器优化。
解决方案:
修改工程设置中的Debug项,增加-g参数选项,从而生成调试信息。
操作步骤:工程名上,右键-属性-C/C++ Build-Settings-Debugging-Debug Level设置为“Default(-g)”【见下图】
建议把优化等级调整为None,防止单步调试时,代码行数不匹配。
操作步骤:工程名上,右键-属性-C/C++ Build-Settings-Optimization-Optimization Level设置为“None(-O0)”
问题解决后:
按照上述设置后,已可以正常单步调试。【见下图】