如何在 Windows 上更新 MinGW 中的 GCC?

我曾经在 Ubuntu 上从源代码手动安装 GCC,这是一个痛苦的过程。所以我真的不想重复这个过程。目前,我的机器上已经安装了 MinGW 和 GCC (4.6.2)。那么,有没有一种简单的方法来更新 GCC,而不必完全从源代码构建它呢?以前有人这样做过吗? 能和我分享一些技巧吗?

131934 次浏览

我已经构建了一个更新的 GCC 4.7(它是在代码冻结内构建的,所以它应该等同于发布版本)。此外,此构建包含对 <thread>的支持。

如果您想在 Linux 上使用它,那么 GCC _ Linux 包就是您想要的。只需在某处解压缩并将 mingw??/bin目录添加到 PATH。

PS: 有一个本地 Windows 编译器和一个 WindowsClang 版本。我建议只在我的一个 GCC 4.6版本中使用 Clang,因为它在使用 GCC 4.7的 libstd + + 时遇到了麻烦。在与 GCC 包相同的目录中提取 Clang 包,它将立即工作。

更新: 截至2012年11月5日,MinGW包括 GCC 编译器的4.7.2,这是最新版本。我个人将使用 MinGW 包,因为它包括 MSYS和其他工具,而且因为它是事实上的标准,我希望它能得到更好的支持。唯一的缺点是所包含的 GDB 不包括 Python 脚本,但我认为可以单独更新。


我不知道您是否可以在 MinGW 中更新 GCC,但是有一些替代 MinGW 的项目可以使用 GCC 的更新版本。

MinGW 建筑项目提供了一个类似 MinGW 的软件包,但是更新了 GCC (4.7.2)。在将现有的 MinGW 移动到另一个文件夹之后,我将文件解压缩到 c: MinGW (这样我就可以使用相同的路径)。只有 MinGW 有 MSYS,所以如果你需要的话(我做了)从原来的 MinGW 复制 msys 文件夹。

在安装 MinGW-build 之后,g + + ——版本的结果是:

g++ (Built by MinGW-builds project) 4.7.2

最新的海湾合作委员会的标准 MinGW 目前是4.7。我用 Code: : Block 和最新的 wxWidgets 源代码编译了一些简单的项目,看起来一切正常。

值得注意的是,MinGW 构建包含一个启用 Python 脚本的 GDB 版本,以防您需要 STL 漂亮的打印机支持或其他 GDB Python特性。

另一个不错的选择是 TDM-GCC,这是一个拥有令人印象深刻的安装程序的项目,其中包括更新的 GCC 编译器(4.7.1)和支持工具。这是一个独立的包。据我所知,这个包附带的 GDB 不支持 Python 脚本。

最后是 MinGW-w64项目,它是 MinGW 的一个分支。Rubenvb 回答了这个问题,他有很好的独立软件包(在个人构建文件夹中) ,基于这个项目,其中包括一个更新的 GCC (4.7.2)。所包含的 GDB 似乎启用了 Python 脚本。

使用终端进行更新:

  1. 运行命令提示符/终端(cmdsh)。

  2. 更新软件包清单:

    mingw-get update
    
  3. After updating the package list, run:

    mingw-get upgrade
    

When the command finishes running, all of your packages will be upgraded.


Update using the GUI version:

If you aren't used to the terminal, there is also a GUI version of MinGW called "MinGW Installation Manager", which is normally located at:

C:\MinGW\libexec\mingw-get\guimain.exe
  1. 当图形用户界面打开时,点击 Installation -> Update Catalogue。这将更新软件包列表。

  2. 然后,点击 Installation -> Mark All Upgrades。这将选择所有可以升级的软件包。

  3. 最后,点击 Installation -> Apply Changes应用升级。

如果你使用 MSYS2 只要打开 mingw64控制台,输入:

# Update the package database and core system packages with:
pacman -Syu


# If needed, close MSYS2, run it again from Start menu. Update the rest with:
pacman -Su

来自 http://winlibs.com/的 MinGW-w64版本具有最新的 GCC 版本,不需要安装,只需解压下载。要升级,只需用新版本替换 mingw32或 mingw64文件夹即可。

如果你的 g + + 编译器不是这样,你只需要更新它。

第一个问题可以通过以下方法解决:

使用 GUI 版本更新:

如果你不习惯这个终端,还有一个图形用户界面版本的 MinGW,叫做“ MinGW 安装管理器”,它通常位于:

C: MinGW libexec ming-get guimain.exe 当 GUI 打开时,点击

Installation -> Update Catalogue

。这将更新包列表。

之后,踢踏舞

Installation -> Mark All Upgrades

。这将选择所有的软件包,可以升级。 终于,敲了

Installation -> Apply Changes

来进行升级。

第二个问题可能是,如果您没有更新环境变量中 mingw 的路径。