我发布了这个,然后回答自己为其他人记录这个问题。
我正在使用带有Simplelink BLE堆栈的TI CC2650 Launchpad。我编译和运行的项目是Project Zero(带有编辑的代码和其他配置文件)。
我想在配置文件中的某些函数中放置断点。对于大多数人我不能!当我在调试时查看反汇编时,我发现符号不可用。
我可以放置断点的唯一地方是在main.c或内部回调中。
如何在其他地方放置断点?我的符号在哪里?
答案 0 :(得分:-1)
所以交易是这样的 - 我试图设置断点的函数是静态函数,包含它们的C模块内部。其中,大多数只在代码中使用过一次。所以编译器内联了它们!
因此,为了实现这些函数的调试,必须禁用编译器优化。这会禁用内联,并导致这些函数的符号生成。