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:有条件地从构建中排除文件

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1401818/codecomposer-exclude-files-from-build-conditionally

器件型号:CODECOMPOSER
主题中讨论的其他器件:MSPM0G3507

工具与软件:

您好!

我目前正在从事一个项目、希望能够有条件地管理驱动程序文件。 我要做的是能够排除或不排除某些

结构化文件。 目标是在不需要某些 C 文件时快速启用或不启用这些文件、具体取决于哪个电路板

编译目标的文件。 因此、不能满足使用"右键点击->从编译中排除文件"手动排除文件的要求、因为配置可能会在 git 上通过 CCS 变量共享

或外部配置文件。

是否有办法使用 CCS 实现此行为? 我一直尝试预编译步骤、通过创建一个 python 脚本来读取配置文件、并应该以某种方式决定哪些文件将包含或不包含在编译中 、但目前失败。

我目前正在使用 Code Composer Studio 9、但可能最终会升级。

提前感谢、

此致

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

    您好!

    是否有办法使用 CCS 实现此行为? 我一直在尝试预编译步骤,通过创建一个 python 脚本,读取一个配置文件,并应该以某种方式决定哪些文件将被包括或不包括在编译中 ,但目前不成功。

    不适用于特定文件。 至少不容易。 如果您愿意手动编辑项目文件夹中的.ccsproject (我们通常不建议这样做),您的脚本可以添加如下内容:



    数量 标签。 如果您决定尝试此操作、我首先建议通过 IDE 手动排除该文件、然后查看对.ccsproject 所做的更改、以便您知道在何处以及如何进行更改。

    我的一个问题是、在调用预编译步骤之前、这么做作为项目预编译步骤可能不起作用、因为我认为 CCS 将生成 makefile 文件(这将定义哪个文件是编译的一部分)。 因此、将.ccsproject 修改为预编译步骤将太晚。 如果是这种情况、那么您将无需依赖预编译步骤。 如果您使用项目 CLI 命令构建项目、则只需首先手动调用脚本即可。

    希望这对您有所帮助

    Ki

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

    您好!

    感谢您的答复。 是的、修改 ccsproject 看起来像一件"危险"的事情。 我认为我不会将文件排除在编译之外、而是使用#ifdef 指令删除文件内容、这些指令基于预编译步骤生成的头文件中的定义、有点难看、但它应该可以正常工作。

    再次感谢、

    Maxence

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

    这是另一个要考虑的选项。 如果您可以将所有条件文件移动到一个单独的文件夹、则可以让脚本在同一文件夹内生成一个名为".exclude"的空文件。 此.exclude 文件将导致文件夹中的所有文件从编译中排除。