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

Windows11编译AudioToolboxWrapper遇make Error 127求助

解决Windows11下make install Error 127及Make排查方法

一、Make的排查日志与配置文件

  • 启用详细执行日志:执行make install V=1,会输出所有执行的命令细节,包括调用的脚本、路径参数等,这是排查make执行问题最直接的方式。
  • 查看生成的Makefile:CMake在build目录下生成的Makefile是make的核心配置文件,里面定义了编译、安装的所有步骤。重点查看install目标对应的命令块,定位涉及/bin/sh的调用逻辑。
  • 日志重定向保存:如果需要留存日志用于后续分析,执行make install > make_install.log 2>&1,将标准输出和错误输出全部写入日志文件。

二、解决make install Error 127(/bin/sh: No such file or directory)

Error 127本质是找不到指定的shell或可执行脚本,在Windows11环境下,核心问题通常和Unix风格工具链的环境配置有关,解决思路如下:

  1. 使用正确的终端环境
    如果你依赖MinGW、MSYS2或Git Bash这类Unix兼容工具链,必须在对应的终端(比如MSYS2 Bash、Git Bash)中执行make install,而不是Windows默认的CMD或PowerShell。这类终端自带/bin/sh环境,能正确解析Makefile中的Unix风格命令。
  2. CMake生成Makefile时指定shell路径
    在运行CMake配置阶段,明确指定系统中存在的shell路径,比如使用MSYS2的bash:
    cmake -G "Unix Makefiles" -DCMAKE_SHELL=/usr/bin/bash.exe ..
    
    或者直接在CMakeLists.txt中添加配置:
    set(CMAKE_SHELL "/usr/bin/bash.exe" CACHE STRING "Path to compatible bash shell")
    
  3. 修正Makefile中的硬编码shell路径
    打开build目录下的Makefile,搜索/bin/sh,如果发现硬编码的路径,替换为你系统中实际的shell路径(比如C:/msys64/usr/bin/bash.exe,注意使用正斜杠)。
  4. 调整环境变量优先级
    将MSYS2或Git Bash的bin目录(比如C:\msys64\usr\bin)添加到系统环境变量PATH的最前端,确保系统优先调用兼容的Unix工具,避免冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 22:53:23