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.

[参考译文] F29H85X-CCS SOM 20.4.1.4 增量构建问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1614404/f29h85x-som-evm-ccs-20-4-1-4-incremental-build-issue

器件型号: F29H85X-EVM-EVM SOM

CCS 团队、  

我的客户遇到增量构建问题 — 这是已知问题还是您有任何建议?

“我们目前遇到与增量构建相关的 CCS(版本:20.4.1.4__1.10.1、默认 VS Code API:1.102.3)问题。 当我们修改头文件(特别是在电机控制示例工程的 user_mtr1.h 中)中的符号值、然后在没有先前的“清理工程“的情况下执行“编译工程“时、编译器似乎不会拾取这些更改。

您能帮助我们了解导致此行为的原因吗? 我们不确定这是因为我们这边的工程配置不正确、还是 CCS 增量构建机制存在潜在问题。“

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

    嗨、Lori、

    当我们在头文件(特别是在 user_mtr1.h 中的电机控制示例项目
    )中修改符号值时

    客户能否描述他们对 user_mtr1.h 进行了哪些具体更改? 我已经尝试了使用 CCS 20.4.1 的 F29 MotorControl SDK 中的服务器驱动器 QEP 工程示例、到目前为止似乎无法重现该问题。

    谢谢

    Ki

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

    您好、Ki、

    感谢您的快速答复。

    我们已经对文件进行了一些调整。 但是、我可以确认是否更改了任何已定义的符号值、例如在本例中:

    #define USER_MOTOR1_OVER_CURRENT_A (1.0f)

    然后按 Ctrl + B (Build Project)、会产生不 使用更新值的固件二进制文件。

    在我的调查过程中,我还遇到了与使用分布式版本控制相关的问题(在我们的案例中,是带有 SmartGit 应用程序的 Git )。 当 SmartGit 修改源文件时(例如在合并期间)、并且这些文件当前在 CCS 编辑器中打开时、有时会在 CCS 中无法正确更新。

    您对此行为有何见解?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引述 userid=“667802" url="“ url="~“~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1614404/f29h85x-som-evm-ccs-20-4-1-4-incremental-build-issue/6228223

    我们已经对文件进行了一些调整。 但是、我可以确认是否更改了任何已定义的符号值、例如在本例中:

    #define USER_MOTOR1_OVER_CURRENT_A (1.0f)

    然后按 Ctrl + B (Build Project)、会产生不 使用更新值的固件二进制文件。

    [/报价]

    该修改是否实际上会导致受影响的源文件在增量构建时重建、而问题只是生成的输出没有反映更改? 或者增量构建是否完全不检测更改、因此不构建受影响的文件?

    [引述 userid=“667802" url="“ url="~“~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1614404/f29h85x-som-evm-ccs-20-4-1-4-incremental-build-issue/6228223

    当 SmartGit 修改源文件时(例如在合并期间)、并且这些文件当前在 CCS 编辑器中打开时、有时会在 CCS 中无法正确更新。

    您对此行为有何见解?

    [/报价]

    我自己没有看到这种行为。 如果您关闭编辑器中的文件并将其重新打开、您是否看到正确的更新?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    该修改是否实际上会导致在增量构建时重建受影响的源文件、问题只是生成的输出不反映更改? 或者增量构建是否完全不检测更改、因此不会构建受影响的文件?

    增量构建不会检测受影响的*。c 源文件中使用 user_mtr1.h 中定义的符号的更改。
    我发现源文件不包含 user_mtr1.h 添加包括后、问题消失。
    但是、我仍然想知道在这种情况下编译器为什么不报告有关缺少头文件的错误。

    关于第二个主题、我仍需要进一步调查。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    但是、我仍然想知道为什么编译器在这种情况下不报告有关缺少头文件的错误。

    您能否提供测试用例? 如果您使用基于 SDK 示例的工程、请指定具体的工程和所做的修改。