为什么最新的MinGW gcc版本是6.3.0?

3
我正在从https://sourceforge.net/projects/mingw/files/获取MinGW,这是我编译LuaRocks软件包所需的mingw32-gcc.exe,因此我无法使用Mingw-w64。
安装管理器中的最新版本似乎是6.3.0,但我之前也有2019年左右的8.2.0版本。为什么它会给我一个旧版本?
PS C:\Users\Ketho> mingw32-gcc --version
    mingw32-gcc.exe (MinGW.org GCC-6.3.0-1) 6.3.0
    Copyright (C) 2016 Free Software Foundation, Inc.

PS C:\Users\Ketho> mingw32-gcc --version
    mingw32-gcc.exe (MinGW.org GCC-8.2.0-3) 8.2.0
    Copyright (C) 2018 Free Software Foundation, Inc.

1个回答

4

MinGW项目似乎在开发方面有所滞后。

但与此同时,MinGW的一个分支——MinGW-w64项目最近已经得到了积极的开发。它支持Windows 32位和Windows 64位。

我建议完全转换到MinGW-w64。

可以从https://winlibs.com/下载针对最新MinGW-w64构建的最新GCC编译器作为独立软件包。

如果您使用MSYS2 shell,还可以通过其软件包管理器pacman安装MinGW-w64。


这并没有回答原始MinGW项目回滚到6.3.0的问题。只是将gcc.exei686-w64-mingw32-gcc.exe从w64项目更名为mingw32-gcc.exe对我的32位LuaRocks设置有效,所以我转而使用(WinLibs)MinGW-w64,谢谢! - Ketho
1
通常情况下,gcc 命令需要在主机/平台三元组之前加上前缀(在本例中为 i686-w64-mingw32)。显然旧版的 MinGW 不是这样做的,而是使用 mingw32-gcc.exe。该版本仅支持 32 位 Windows,也不支持交叉编译。 - Brecht Sanders

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接