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

Cygwin中执行Makefile调用Python脚本提示文件不存在,如何修复?

问题修复方案

问题原因

Cygwin的bash shell无法识别Windows风格的盘符路径(如C:/Android/Sdk/...),会将其当作相对路径拼接到当前工作目录下,导致生成错误的脚本路径/c/Projects/.../C:/Android/Sdk/...。

修复方法

方法1:在Makefile中用cygpath转换路径

修改Makefile中的规则,通过cygpath -u工具将Windows风格的$(NDK_PATH)转换为Cygwin兼容的POSIX路径:

$(OUTDIR)/toolchain:
    `cygpath -u $(NDK_PATH)`/build/tools/make_standalone_toolchain.py  \
        --api=24    \
        --arch=arm64    \
        --install-dir=$@    \
        --verbose=2

cygpath -u会把C:/xxx格式的路径转换为/c/xxx或/cygdrive/c/xxx的POSIX格式,让bash能正确识别路径。

方法2:直接使用Cygwin风格的NDK_PATH

在定义NDK_PATH时,直接使用Cygwin支持的POSIX路径:

# 在Makefile中定义NDK_PATH
NDK_PATH := /c/Android/Sdk/ndk/25.1.8937393

或者在Cygwin终端中先设置环境变量:

export NDK_PATH=/c/Android/Sdk/ndk/25.1.8937393

这样Makefile调用脚本时,路径本身就是Cygwin可识别的格式,不会出现拼接错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 22:55:19