我正在尝试一些自定义构建步骤来构建项目。 我使用 TI 工具和一些示例变量完成了更复杂的位(将.out 转换为.bin、合并两个 ELF 文件)、但最后一个非常简单的步骤对我来说有点困惑。 我只想复制一个文件、用合并的 ELF 文件替换普通工程.out 文件。 但是、如何以跨平台方式实现这一点呢? 无论是否在 Windows、Linux 或 macOS 版本的可用 Code Composer 下运行、我都希望该项目正常工作。
当然、在 Linux 和 macOS 中、我可以使用`cp`、假设它们在路径中或在诸如"/bin/cp 的已知路径中可用。 在 Windows 下 、它可能 是`copy`、尽管看起来是一个 DOS 内置文件、但不清楚 CCS 是 在 shell 中运行构建步骤、还是直接解析/执行这些步骤。 要实现这两个操作、我需要执行某种`如果 POSIX、那么… 否则、如果是 Windows、则为…" 逻辑、它还 会打开 一个问题、即是否有可用于预编译/编译后 处理步骤的 shell 语言、 或者这些步骤至少在什么环境中运行。 到目前为止、我的印象是:
* CCS 首先使用自己的语法对"${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin 等内容进行变量扩展、尽管它看起来与 Unix shell 兼容
*可能只是直接运行、工作目录设置为"Debug/"等活动配置文件夹、"pipers"或"redirection"或条件逻辑不可用?
*如果这些工具没有随 CCS 一起安装(我只看到 `gmake`和`unzip```)或与 SDK 一起安装(例如 ARM 编译器等)、那么我可能无法依赖它们的跨平台??
对于 这些类型的问题、我是否应该参考文档? "6.1.3.4. 用户指南(当前在 https://software-dl.ti.com/ccs/esd/documents/users_guide/ccs_project-management.html#pre-and-post-build-steps 上找到、 但链接似乎不会直接指向 prctice 中的该部分)中的预编译和编译后处理步骤"是非常高级别的、并不会真正详细地介绍此类内容。