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.

[参考译文] TDA4VH-Q1:内核调试符号

Guru**** 2398695 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1490180/tda4vh-q1-debug-symbols-for-kernel

器件型号:TDA4VH-Q1

工具与软件:

尊敬的 TI 团队:

是否有方法为免费 RTOS 内核生成调试符号? 因为我们也可以单步进入 memcpy 函数

 我还添加了一个屏幕截图、其中提供了相关内容。

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

    你(们)好  

    请忽略上述内容、

    实际问题是、

    我们想知道 TI 的当前发布是发布模式还是调试模式、因为我们可以单步执行 memcpy 函数、因此我们怀疑这是调试模式。

    有人可以确认吗?

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

    尊敬的 Gowtham:

    我们想知道 TI 的当前版本是发布模式还是调试模式、因为我们可以单步执行 memcpy 函数、因此我们怀疑这是调试模式。

    这是唯一的问题。 请您说明一下您要询问哪个版本。 为困惑道歉。

    此致、
    Sivadeep

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

    我们使用的是 SDK 9.2。

    这是唯一的问题。

    是的、我们想知道 FreeRTOS 的内核是处于调试模式还是发布模式

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

    尊敬的 Gowtham:

    默认版本中的固件是在发布模式下构建的、
    您可以更改为调试模式
    SDK_builder/build_flags.mak

    您可以将以下值更改为调试

    #有效值:释放 DEBUG ALL
    profile?=释放

    并重新编译 SDK (使 SDK_scrub;使 SDK -J16)

    此致
    Rahul T R  

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

    尊敬的 

    感谢反馈、如果默认发布是在发布模式、我们就不会感到困惑、为什么我们能够单步执行 memcpy (附加的快照)等内核库源代码、我们怀疑 rts7120_le.lib 是否是针对调试模式构建的、我们看到库的大小为27.9MB。
    您能否确认此库是在发布模式还是在调试模式下构建、如果它处于调试模式、我们如何在发布模式下生成它

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

    尊敬的 Porselvan:

    调试符号存在于版本和调试模式二进制文件中。
    主要区别在于、在调试模式下删除了优化、因此您可以单步执行每行代码。
    在释放模式下、您将无法进入每一行

    在固件打包到 SD 卡映像之前、调试符号会被剥离。 但是、如果从 vision_apps/out/...加载固件 获取文件
    它将具有调试符号

    可以检查此 makefile 代码
    makefile_linux_arm.mak«makerules - processor-sdk/sdk_builder - Unnamed repository;编辑此文件"destination 以命名库。

    此致
    Rahul T R

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

    尊敬的

    感谢您的答复、以上说明适用于二进制文件/固件、对吗?
      我在之前的评论中问的 rts7120_le.lib 该怎么办? 这也是同样的情况吗?

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

    尊敬的 Porselvan:

    您能告诉我 SDK 中该库的完整路径吗
    回顾一下

    此致
    Rahul T R

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

    /home/user/ti/ti-cgt-c7000_4.1.0.LTS/lib/rts7120_le.lib

    这是 C7的编译器库

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

    尊敬的 Gowthan:

    当构建 xerf 文件(最终固件)时、此库是静态链接的。
    如果此库中是否存在调试符号、则此选项无关紧要。

    由于它是编译器包的一部分、因此必须使用进行编译
    优化已启用

    您能单步执行 其中定义的每一行代码吗
    有关系呢?

    此致
    Rahul T R