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:在 VectorCAST 中构建 C7x DSP 代码时_TSC 符号上的链接问题

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1621840/tda4vh-q1-linking-issue-on-__tsc-symbol-when-building-c7x-dsp-code-in-vectorcast

器件型号: TDA4VH-Q1

尊敬的团队:

我将在 VectorCAST 环境中使用 TI CGT C7000 工具链构建 C7x DSP 代码。 编译正确编译、但在链接期间、我收到以下未解析的符号错误:

 未定义首次引用
 符号       
 ----- ------------------------
 __TSC  I0000009.obj   

错误:未解析的符号保留

我的理解是、_TSC 在 c7x_cr.h 中声明、表示时间戳计数器寄存器。 ‑、在我的单位测试构建中、此符号不会自动解析。  

有关如何正确链接或解析__TSC 符号的任何指导都会非常有帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:Nandhini、

    我的理解是__TSC 是在 c7x_cr.h 中声明的、表示时间戳计数器寄存器。

    是的、您对的理解__TSC是正确的。 您可以在 C7x 优化指南((software-dl.ti.com/.../C7000_C7x.pdf Optimization_Guide?)中找到更多详细信息第 3.3 款 说明了__TSC寄存器并展示了其使用方式。

    [报价 userid=“687632" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1621840/tda4vh-q1-linking-issue-on-__tsc-symbol-when-building-c7x-dsp-code-in-vectorcast

     未定义首次引用
     符号       
     ----- ------------------------
     __TSC  I0000009.obj   

    错误:未解析的符号保留

    [/报价]

    关于在单元测试代码中使用__TSC 时的链接问题:出现错误是因为编译器未将__TSC 识别为寄存器、因此将其视为普通符号并生成链接错误。

    请确保 C7x CGT 工具链路径设置正确、并且--silicon_version在构建设置中使用了正确的选项。 同时确认 正在为目标环境构建代码。
    此致、
    Betsy Varughese.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、
    构建设置中已在使用芯片版本 7120、在 VectorCAST 中正确设置了 C7x CGT 工具链路径、并且正在为目标环境构建代码。

    我们还可以检查是否有任何其他问题来解析_TSC 未解析的符号?

    此致、
    Nandhini

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

    您好:Nandhini、  

    正在为目标构建代码、对吧?
    此致、
    Betsy Varughese.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、  
    是的。  

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

    您好:Nandini、

    您能分享用于构建代码的命令吗?
    此致、
    Betsy Varughese.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好:Nandini、

    1) 我希望你已经包含 <c7x.h> 在__TSC使用的源文件中。

    2) 生成汇编输出 并验证编译器是否生成寄存器访问指令、而不是对__TSC 的外部引用 .

    3)Please confirm that the VectorCAST environment is invoking the C7x compiler (cl7x) with the same options used in the normal target build.

    4) 如果可用、您能否共享完整的构建或执行日志?

    5)  您是否尝试过在没有 VectorCAST 的情况下运行代码? 如果是、它是否按预期工作?

    6) If possible, please share the test code so I can review it from our end and provide further feedback.

    Regards,

    Betsy Varughese

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

    尊敬的  Betsy Varughese:
    感谢您的输入。 此问题已通过在 VectorCAST 环境中启用__cregister 来解决。

    此致、
    Nandhini

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

    您好:Nandhini、

    欢迎您!

    此致、

    Betsy Varughese.