You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下如何修改TI Code Composer Studio自动生成Makefile的SHELL

解决方案

以下是经过验证的三种可行方案,按实施成本从低到高排序:

方案1:项目级注入SHELL变量(最推荐)

你提供的生成makefile末尾自带-include ../makefile.init逻辑,可利用make的变量覆盖规则直接注入配置:

  1. 在你的项目根目录(和生成的makefile同级的上级目录,即工作区项目根目录)新建名为makefile.init的文件
  2. 文件内写入以下内容:
override SHELL = sh.exe
# 若sh.exe不在系统PATH中,可写绝对路径,例如:
# override SHELL = C:/Git/usr/bin/sh.exe

该方案无需修改CCS任何配置,仅对当前项目生效,升级CCS或编译器都不会受影响,make执行时override关键字会强制覆盖之前生成的SHELL = cmd.exe配置,完全满足需求。

方案2:全局修改CCS makefile生成模板

如果需要所有新生成的项目默认使用sh.exe作为SHELL,可直接修改CCS内置的TI专属模板文件:

  1. 关闭CCS,进入CCS安装目录,CCS10的模板默认路径为:C:\ti\ccs1040\ccs\ccs_base\managedbuild\com.ti.ccs.managedbuild.gnu_1.0.0\templates
  2. 在该目录下搜索包含SHELL = cmd.exe的模板文件,直接将该行替换为SHELL = sh.exe
  3. 重启CCS后,所有新生成的makefile都会默认使用sh.exe作为SHELL
    注意:每次升级CCS或重装TI代码生成工具后,需要重新修改模板文件。

方案3:修正临时构建命令配置

你之前使用的sh.exe -c gmake.exe args参数传递错误的问题,可通过变量占位符解决:

  1. 打开项目属性 -> 构建 -> 构建器设置
  2. 将构建命令修改为:
sh.exe -c "gmake.exe $*"

该配置会将CCS传递的所有构建参数完整传入gmake,不会出现参数丢失问题。

注意事项

无论使用哪种方案,都需要确保sh.exe所在路径已添加到系统PATH环境变量中,或直接在SHELL配置中写绝对路径,避免gmake执行时找不到SHELL程序报错。

内容的提问来源于stack exchange,提问作者Harvey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 16:57:03