This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:TI C/C++编译器
你好
我正在开发 C2000的实时监控系统、我需要同时支持传统调试模型(--symdebug:coff)和新调试模型(--symdebug:dwarf)。
输出格式固定为传统 COFF。
是否有任何快速轻松的方法来检测传统 COFF 文件中使用的调试模型? 像使用 ofd2000.exe 的某种方式一样?
提前感谢。
COFF 调试格式多年来一直不受 C28x 编译器支持。 支持它的最后一组版本是15.12.x.LTS。 您应该认真考虑取消对 COFF 的支持。
直接回答您的问题... 最好的方法是查看目标文件是否包含名称以.debug_开头的任何段。 例如、.debug_info 或.debug_line。 如果您看到任何此类段、则会使用 DWARF 调试。 如果您没有看到任何此类段、则会使用 COFF 调试。
谢谢、此致、
乔治
你好、George
感谢您的建议。
我使用 ofd2000检查了 COFF 调试是否包含 DEBUG_INFO 部分。
但这些段看起来像是针对 TI 自己的代码(例如、args_main.c、_lock.c、 startup.c、 boot28.inc)、 而不是我自己的代码。
还有其他方法吗?
谢谢、此致、Daewoong
[引用 user="easydsp]I 使用 ofd2000检查了 COFF 调试是否包含 debug_info 部分。 [/报价]
如果存在名为.debug_info 的段、则该文件包含 DWARF 调试格式的调试信息。
[引用 user="easydsp">但这些段看起来像是用于 TI 自己的代码(例如、args_main.c、_lock.c、 startup.c、 boot28.inc)、 而不是我自己的代码。 [/报价]
一个可能的解释... RTS 库使用 DWARF 调试信息构建、代码使用 COFF 调试信息构建。 工具可以处理该组合。
[引用 user="easydsp"]是否还有其他方法?
我不知道任何其他方法。
谢谢、此致、
乔治
乔治
感谢您的所有建议。 这对您有很大帮助。
此致、Daewoong