如何在MSYS2环境中正确安装并运行meson?
在MSYS2中正确安装并运行Meson的解决办法
问题根源
- 安装MSYS版
meson时报错,是因为Meson的检测脚本误判了环境——哪怕你打开的是MSYS窗口,只要系统PATH中混入了MinGW相关路径,就会触发这个错误提示。 - 安装MinGW版
meson后出现command not found,是因为MSYS shell的默认PATH不包含MinGW的二进制目录(比如/mingw64/bin),系统找不到藏在该路径下的meson命令。
三种可行解决方案
方案1:修复MSYS版Meson的环境冲突
如果想继续使用MSYS自带的meson,需要先清除PATH中的MinGW相关路径:
- 打开MSYS窗口,先查看当前PATH内容:
echo $PATH - 如果输出里包含
/mingw64/bin或/mingw32/bin,临时移除该路径(仅当前会话生效):export PATH=$(echo $PATH | tr ':' '\n' | grep -v '/mingw64/bin' | tr '\n' ':') - 执行
meson --version验证是否正常运行。若要永久生效,可将上述命令添加到~/.bashrc文件中,重启MSYS窗口后自动生效。
方案2:配置PATH适配MinGW版Meson
如果选择安装MinGW版本的meson,需要手动将MinGW的二进制目录加入MSYS shell的PATH:
- 先安装对应包:
pacman -S mingw-w64-x86_64-meson mingw-w64-x86_64-python3 - 临时添加MinGW64的bin目录到PATH(当前会话生效):
export PATH=/mingw64/bin:$PATH - 验证命令是否可用:
meson --version - 若要永久生效,编辑
~/.bashrc文件,添加export PATH=/mingw64/bin:$PATH,保存后重启MSYS窗口即可。
方案3:用Python pip安装Meson(通用兜底方法)
如果上述方案都不适用,直接用pip安装是最稳妥的选择:
- 先安装MSYS版的Python3和pip:
pacman -S python3-pip - 通过pip安装Meson:
pip install meson - 若验证时提示
command not found,需将pip的安装路径加入PATH:
同样,将这行命令添加到export PATH=$HOME/.local/bin:$PATH~/.bashrc中即可永久生效。
内容的提问来源于stack exchange,提问作者BadZen
相关产品推荐
相关产品推荐

