3.2 windows + msys2
对于msys2这款软件已经从陌生到熟悉了,从安装时,各种bug,安装失败,到如今的畅通之道。
MSYS2 (Minimal SYStem 2) 是一个MSYS的独立改写版本,主要用于 shell 命令行开发环境。同时它也是一个在Cygwin (POSIX 兼容性层) 和 MinGW-w64(从”MinGW-生成”)基础上产生的,追求更好的互操作性的 Windows 软件。
官网 http://www.msys2.org/
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DdPfxqK0-1579837834142)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0d9767af44f4.png)]
下载安装:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SmLHlVn4-1579837834143)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0d9b6d23258c.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mvEPROX3-1579837834144)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0d9cb31a4024.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iyVl3bsI-1579837834144)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0da00ac88e7c.png)]
启动安装报错之类的错误,其实都有解决之道的,比如下面的错误,只要按照我的步骤走,绝对的可以畅通无比
错误:GPGME error: Invalid crypto engine
错误:GPGME error: Invalid crypto engine
错误:GPGME error: Invalid crypto engine
错误:「mingw32」数据库不正确 (数据库不正确或损毁 (PGP 签名))
错误:「mingw64」数据库不正确 (数据库不正确或损毁 (PGP 签名))
错误:「msys」数据库不正确 (数据库不正确或损毁 (PGP 签名))
按照 C:\msys64\etc\pacman.conf 第45至47行的描述
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with `pacman-key --populate archlinux`.
备用:
若你在换源之后,更新了软件包,有可能需要关闭 msys2 然后再重新运行如下两个批处理文件:
autorebase.bat
msys2_shell.bat
第一步:打开
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-79SiSekk-1579837834144)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0dd6ff5fe9cc.png)]
输入命令
pacman-key --init
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6XbQan3m-1579837834145)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0dddba5e8b24.png)]
第二步换源
换掉 C:\msys64\etc\pacman.d\ 的 mirrorlist.mingw32, mirrorlist.mingw64 和 mirrorlist.msys 里的默认源,改为以下源或者直接替换掉文件夹即可
修改完之后,把此文件夹备份一份,一会或者以后也要使用
## 32-bit Mingw-w64 repository mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/i686/
#Server = https://mirrors.ustc.edu.cn/msys2/mingw/i686/
#Server = https://mirrors.xjtu.edu.cn/msys2/mingw/i686/
## 64-bit Mingw-w64 repository mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/x86_64/
#Server = https://mirrors.ustc.edu.cn/msys2/mingw/x86_64/
#Server = https://mirrors.xjtu.edu.cn/msys2/mingw/x86_64/
## MSYS2 repository mirrorlist
Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch
#Server = https://mirrors.ustc.edu.cn/msys2/REPOS/MSYS2/$arch
#Server = https://mirrors.xjtu.edu.cn/msys2/msys/$arch
以下命令说明
pacman -Syu #同步源,并更新系统
pacman -Sy #仅同步源
pacman -Su #更新系统
第三步 同步源,并更新系统
pacman -Syu
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oPZDONZx-1579837834146)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0e19faf63a10.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0UM3k53T-1579837834146)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0e205931d96c.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WmSzuWLv-1579837834146)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0e25668c801c.png)]
看到此字样时,ctrl+c关闭
可以查阅了解具体信息https://wiki.gimp.org/wiki/Hacking:Building/Windows
翻译:
如果抛出一个错误关于incompatible versions of the cygwin DLL和下面的警告显示:
警告:终止msys2没有回到壳并检查更新againwarning:例如关闭您的终端窗口不说出
然后按照指示关闭终端窗口(可以提醒你正在运行的进程,选择“确定”关闭该窗口)。
重新打开msys2从安装目录运行msys2_shell.cmd,并重新执行更新命令pacman - Syu
如果需要,关闭msys2再次运行它(再次)。
最后剩下的更新与一个电话:
pacman -Su
一旦一切都更新,退出msys2。
第四步 替换源
然后关闭掉终端,重新替换源(把之前备份的,再替换过去)
第五步更新系统
运行 msys2_shell.cmd
pacman -Syu
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dYKZSQNF-1579837834146)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0e4bdffc14a0.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OEeYYCp7-1579837834147)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0ea190490340.png)]
第六步 安装软件
pacman -S man gcc mingw-w64-x86_64-toolchain base-devel git tar perl make openssl mingw-w64-x86_64-pkg-config
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JPPMh21Q-1579837834147)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0ed38f7cc424.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y94xt2uG-1579837834147)(http://doc.feijianshen.com/uploads/projects/xbhjdj/153c0ed564401304.png)]
对于没有安装pkg-config的包可以安装如下的包,因为在windows上这个包很常用.
mingw-w64-x86_64-pkg-config
pacman -S mingw-w64-x86_64-pkg-config
第七步配置环境
需要重启cmd命令行才能够验证输入命令
注意这两个可能顺序不同,造成你的输入命令就无法执行,请注意这种情况