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

Win11下STM32CubeIDE通过构建命令执行bash脚本的方案

解决STM32CubeIDE自定义构建命令调用build.sh的问题

正确的自定义构建命令

Win11环境下直接输入.sh脚本路径无法生效,因为系统默认不会用git-bash解析shell脚本,必须显式调用git-bash执行。在项目属性->C/C++ Build的自定义命令框中输入以下内容:

"C:\Program Files\Git\git-bash.exe" -c "source ${workspace_loc:/${ProjName}/build.sh}"

补充说明

  • 若git安装在Program Files (x86)目录,路径改为"C:\Program Files (x86)\Git\git-bash.exe"
  • 可用环境变量替代硬编码路径,比如"%PROGRAMFILES%\Git\git-bash.exe",适配不同安装位置
  • 若脚本无需source(仅执行命令而非加载环境变量),可简化为:
    "C:\Program Files\Git\git-bash.exe" "${workspace_loc:/${ProjName}/build.sh}"
    

更优解决方案

方案1:整合脚本逻辑到IDE构建配置

  1. 打开项目属性->C/C++ Build->Settings,在Build Command中直接填写make build_all
  2. 切换到Environment标签页,将stm32.sh中定义的环境变量逐一添加,替代source stm32.sh的操作
  3. 若需切换到项目目录,在Pre-build Steps中添加命令:
    "C:\Program Files\Git\git-bash.exe" -c "cd ${workspace_loc:/${ProjName}}"
    

这种方式依赖IDE原生构建流程,避免外部脚本依赖,更符合IDE使用规范。

方案2:优化脚本调用方式

  1. 在git-bash中给build.sh添加执行权限:
    chmod +x build.sh
    
  2. 在IDE自定义构建命令中使用git-bash的环境变量路径,比如:
    "%PROGRAMFILES%\Git\git-bash.exe" "${workspace_loc:/${ProjName}/build.sh}"
    

这种方式保留脚本灵活性,同时避免路径硬编码问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 00:25:19