一般情况用TDM-GCC就好了,但我因为某些原因需要使用MinGW-w64。MinGW-w64非常不友好,官方不提供更新及时的二进制包。
对于MinGW-w64,目前最好的安装方式是下载msys2,通过pacman安装。
安装好msys2后,具体操作如下:
- 修改软件源
- 执行
pacman -Syu
- 执行
pacman -S mingw-w64-i686-toolchain mingw-w64-x86_64-toolchain
安装
完成后可以在msys2/mingw32
和msys2/mingw64
目录下看到MinGW-w64的i686和amd64版本。
这里有两点需要注意:
一是,msys2第一次使用时,必须pacman -Syu
而不能只pacman -Sy
,否则会因为必要的依赖库没安装导致无法正常安装其他软件。例如我们的MinGW-w64,会因为缺少zstd包而报如下错误:
错误:无法打开文件 /var/cache/pacman/pkg/mingw-w64-x86_64-binutils-2.34-2-any.pkg.tar.zst: Child process exited with status 127
错误:无法打开文件 /var/cache/pacman/pkg/mingw-w64-x86_64-gcc-libs-10.1.0-2-any.pkg.tar.zst: Child process exited with status 127
错误:无法打开文件 /var/cache/pacman/pkg/mingw-w64-x86_64-gcc-10.1.0-2-any.pkg.tar.zst: Child process exited with status 127
错误:无法提交处理 (无法打开软件包文件)
发生错误,没有软件包被更新。
而且即使手动安装zstd包也会在后续过程中卡住,所以必须pacman -Syu
。
二是,装MinGW-w64时最好是安装mingw-w64-i686-toolchain
和mingw-w64-x86_64-toolchain
这两个包,如果只是mingw-w64-i686-gcc
和mingw-w64-x86_64-gcc
,会缺少相关工具链,比如mingw32-make
。
Comments
注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。