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.

[参考译文] 如何将发行版的版本添加到二进制和.tar 名称中

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1320195/how-to-add-the-version-of-the-release-to-the-binary-and-tar-names

您好!

我在根据版本更改.bin 和.tar 名称时遇到问题。 我在某个头文件中定义了一个字符串宏。 我能否将此宏添加为生成变量、以便我稍后可以通过 BuildArtifactFileBaseName 进行访问? 因此、我生成的二进制名称必须与版本不同。 是否有其他处理我的问题的方法? 比如向构建系统中添加一些 python/bash 脚本还是向 make 文件中添加一些命令?  我的主要目标是在我单击"构建"按钮后自动执行我在上面描述的操作。 我使用最新的 CCS 12.6。

Br、

亚历克斯

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

    尊敬的 Alex:

    在你的情况下、最好的选择是使用编译后处理步骤运行一些自定义脚本、以便根据需要重命名文件。  

    https://software-dl.ti.com/ccs/esd/documents/users_guide/ccs_project-management.html#pre-and-post-build-steps

    谢谢

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

    Ki、您好!

    我尝试过这个方法,它没有利润,因为即使我添加一个编译后处理步骤到我的项目,从.out 类型的文件的 Bin 转换后,我的编译后脚本激活。 我的脚本崩溃、显示错误 No such file。 所以它没有 帮助我。 我编写的脚本仅根据版本重命名已生成的 bin 文件。 在这种情况下、我应该怎么做?

    Br、

    亚历克斯

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

    我想我在这里有一些误解。 生成 bin 和 tar 文件的过程是什么? 您能否详细说明当前 从 CCS 项目构建到 bin/tar 生成的流程?

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

    它与默认设置相同、但现在、我们重点讨论使用特定模板生成/重命名.bin 文件。 正如我之前所说的、我在您提到 post-build 步骤之前已经尝试过它。 您知道结果、 tiarmobjcopy 构建步骤(第二个目标)在我的编译后执行。 第一个目标在 Arm 链接器阶段生成.out 文件。 您有何建议?

    Br、

    亚历克斯

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

    好的、现在它在集合在一起。 这就是 生成 BuildArtifactFileBaseName 的位置。 您想要一种方法来以某种方式获取代码中该头文件中定义的版本号、以便 当您在编译后步骤中调用 tiarmobjcopy 时传递 BuildArtifactFileBaseName 时可以使用它。

    你现在做的方式,没有办法。

    我会建议不同的编译后处理步骤。 除了直接调用 tiarmobjcopy 作为编译后步骤、您可以调用一些脚本(可以是 python 或其他任何脚本)来解析用于编译应用程序和获取版本字符串的头文件内容。 然后,相同的脚本会调用 tiarmobjcopy,并可以将 以前的版本号传递给 BuildArtifactFileBaseName。   

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

    谢谢 Ki、这是一个非常明智的建议、并且它很有效。

    Br、

    亚历克斯

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

    我着急、于是我完全忘了使用项目版本生成.tar 文件。 SLImageCreater 工具中的 SYSCFG create_image 命令没有 用于选择映像名称的标志。 我想该工具会隐式执行它。 我该怎么办?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    project version。 SLImageCreater 工具中的 SYSCFG create_image 命令没有 用于选择映像名称的标志。 我想该工具会隐式执行它。 我该怎么做?

    我建议在 WiFi 论坛上发布新话题。 那里的专家可以回答更多有关 Image Creator 的问题。

    谢谢