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.

[参考译文] CCS/CCStudio:加载了符号组合、但无法映射到未去除符号的 ELF 文件中的文件名和行号

Guru**** 2042910 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/748265/ccs-ccstudio-loaded-symbos-but-cannot-map-to-file-names-and-line-numbers-in-a-non-stripped-elf-file

器件型号:CCStudio

工具/软件:Code Composer Studio

我正在尝试在 CCS V8上为 A72内核调试 Jailhouse

我可以加载符号、并且可以看到在尝试设置断点时列出的所有功能。

但是、当到达断点时、CCS 无法追溯文件名和行号、因此我无法在源文件中看到断点。

这意味着、我无法逐行执行、无法查看局部全局变量、甚至无法使用数据结构指针编写表达式。

我已确保使用-g 调试选项构建二进制文件、并通过在该文件上运行 objdump 进行确认。

objdump 可以轻松地反汇编和描述所有源代码行。

附加文件供您参考。 只需加载符号并尝试将 PC 设置为任何函数(例如 arch_cell_create)

e2e.ti.com/.../hypervisor.tar.gz

理想情况下、CCS 应开始查找定义该函数的源文件。 但这不会发生。

请帮助

Nikhil D

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    [引用 user="Nikhil Devshatwar"]我确保使用-g 调试选项构建二进制文件、并通过在该文件上运行 objdump 进行确认。[/quot]

    更大的问题是您启用了哪些优化设置? 优化会对调试可见性产生很大影响。

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    Jailhouse 项目在编译中具有-OS 标志。

    但是、当我运行 objdump -D -S 以反汇编代码时、我可以跟踪文件名和代码片段。

    这意味着二进制文件中存在足够的信息。 不知怎么说、CCS 无法对其进行解码。

    Nikhil D

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我假设您使用的是 GCC、因为您提到了-OS。 OS 基本上是-O2、重点是代码大小。 这是相当多的优化、可能会影响调试可见性。 要尝试的一件事是降低优化设置、以查看是否改善了调试可见性。 否则、调试器可能无法正确处理调试符号。

    谢谢
    Ki
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Ki、

     也尝试了-O0、但行为没有变化

    您应该能够重现此问题。 只需加载二进制文件并尝试在某个位置设置 PC、CCS 应开始查找与该地址对应的源代码

    Nikhil D

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Nikhil Devshatwara">您应该能够复制此内容。 只需加载二进制文件并尝试在某个位置设置 PC、CCS 应开始查找与该地址对应的源代码

    您使用的确切目标是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我没有听到您的反馈,因此这个问题已经解决了。 如果您希望继续讨论、请在下面发布包含更新的回复(或创建新主题帖)。

    谢谢、
    Ki