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.

[参考译文] CODECOMPOSER:.out 文件前导码/标头

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1288947/codecomposer-out-file-preamble-header

器件型号:CODECOMPOSER

您好!
我想问、在 CCS 中构建程序时、是否可以在.out 文件中添加前导码/标头、其中将包含例如软件版本、日期等内容? 我的意思是、如果我有一个.out 文件、我可以在记事本中打开、看看该文件中有哪个版本的代码?

如果可以的话、是否可以选择在每次构建程序时自动执行此操作? 例如、在创建前导码时是否有下载 Git commit 编号的选项?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    ]如果可以的话、在 CCS 中构建程序时、可以在.out 文件中添加前导码/标头

    遗憾的是、不能。

    这里有一个不同的解决方案需要考虑。  在程序中的一个文件中,编写类似于...的代码。

    Fullscreen
    1
    2
    __attribute__((retain))
    static char *version_string = "MY COMPANY SOFTWARE VERSION: 1.2.3";
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    假设您可以访问该命令、 灯串 可用于大多数类似 Unix 的环境(Linux、Cygwin、macOS 等)。  然后您可以运行类似于...的命令。

    Fullscreen
    1
    2
    $ strings executable_file.out | grep "MY COMPANY SOFTWARE VERSION"
    MY COMPANY SOFTWARE VERSION: 1.2.3
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    谢谢。此致、

    -乔治

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

    感谢您的答复。  
    您的回答让我觉得在预构建选项中添加一个在 git bash 中执行的脚本、该脚本获取提交编号/标签/日期、并创建一个包含存储这些信息的变量的.h 文件。 我仍在努力以某种方式将这些内容存储在闪存中、但我已经有了主意。

    下面是脚本的一个示例代码片段、以防任何人将来需要该脚本供参考:

    Git log --price=format:"#define GIT_INFO_PRESENT %%n CONST CHAR* GIT_INFO =\"[%%H、%%d]\";%%n "-n 1 >../Version/FWversion.h