【发布时间】:2012-12-11 15:01:07
【问题描述】:
我使用 Atmel Studio 6 开发了一个 GCC C 可执行项目。目标设备是 ATtiny2313A。有一个C文件和其他头文件。
当我设置大小优化时,我无法调试解决方案,因为当我进入头文件中包含的函数时,调试器显示错误 No source available. No symbols are located for any call stack frame. The source code cannot be displayed。
调试器适用于所有其他优化类型(-O1、-O2、-O3)。
此外,该软件可在真实芯片上运行。
我需要知道我的代码的时序,但我还需要节省闪存空间,因此我无法避免使用优化大小来调试代码。
似乎问题在于链接器无法链接代码的不同部分,因为缺少一些符号。 我怎样才能让它使用所有必要的符号?
【问题讨论】:
-
不确定
-Os是否会覆盖它,但您可以尝试将-fno-omit-frame-pointer添加到您的编译标志中。
标签: c debugging optimization linker avr-gcc