如何将mingw-w64和MSYS2与eclipse或代码块等任何IDE一起使用


  1. 我在此处安装带有的msys2

  2. 我下载i686-5.3.0-release-posix-侏儒-rt_v4-rev0来自此处

  3. 安装msys2-i686-20160205.exe后,在C:\msys32中提取i686-5.3.0-release-posix-侏儒-rt_v4-rev0

  4. 最后,我从"开始"菜单运行MinGW-w64 Win32 Shell,并分别运行以下命令:

    • pacman-Sy pacman

    • pacman-Syu

    • pacman-Su

  5. 在PATH中添加C:\msys32\mingw32\bin

我的问题:

  1. 对于在任何IDE中使用mingw-w64,我真的这么做了吗
  2. MinGW-w64 Win32 ShellMSYS2 Shell

提前谢谢。

以前的msys2&这里是一位linux用户,目前在大学注册,该课程使用代码块作为衡量程序是否有效的标准指标,我想我可以在这里为您提供帮助。

基本要点是,您希望正常安装msys2以及代码块,然后使用代码块设置将编译器设置为使用msys2的mingw-w64编译器。困惑了吗?整体来说相当简单。

  1. 安装代码块。使用已经安装了mingw的安装程序,我们稍后将从默认工具链中复制一些内容
  2. 安装msys2(默认安装位置很好,C:msys64表示64位,我认为C:msys32表示32位;在本指南的其余部分中,我们假设为64位)。请注意,无论您在哪里安装它,我们稍后都需要它
  3. 打开msys2-msys提示符
  4. 更新msys2(由两部分组成的过程,因为windows无法轻松交换使用中的文件)$ pacman -Syu;它将更新可用软件包的一小部分,并要求您关闭该窗口
  5. 完成msys2更新$ pacman -Syu;这次的名单会大得多
  6. 安装base-devel包组$ pacman -Syu base-devel;它将提示您组中的包列表。你想跳过pacman本身,否则它将有同样的两部分更新。上次我检查时,pacman在列表中排名第39,所以你应该在1-38,40-56中输入要安装的内容(根据$currentdate提供的内容进行调整,它可能并不总是39)
  7. 安装一个mingw-w64工具链pacman -Syu mingw-w64-x86_64-toolchain,它会再次提示您选择软件包,您需要全部软件包,所以只需点击回车键。如果你想要32位的工具链,你可以使用pacman -Syu mingw-w64-i686-toolchain
  8. 打开代码块。如果这是您的第一次运行,它会询问您有关文件关联和首选项等的信息。随意设置
  9. 在菜单栏中,单击"设置"->"编译器"。它应该默认为GNU GCC Compiler。在这个设置下应该有一个复制它的按钮。给新的编译器配置文件一个描述性的名称(我用了MSYS2 mingw-w64-x86_64 G++。它会提示你更新工具链可执行文件
  10. 在编译器屏幕上,有一个名为Toolchain executables的选项卡,单击它。将Compiler's installation directory设置为您安装msys2的任何位置,以+对于64位工具链为mingw64,对于32位工具链则为mingw32。假设默认安装位置和64位工具链,则应该是C:msys64mingw64
  11. 在此之下,更改Program Files下所有选项的名称以删除mingw32-前缀,但必须保留为mingw32-make.exeMake program除外。其他所有东西都应该有统一的名称(gcc.exeg++.exe等)
  12. 可选:将此新编译器设置为默认值。您可以在同一个Settings->Compiler窗口中执行此操作

我在youtube上制作了一段视频,展示了整个过程,因为我还没有在互联网上看到这段视频。

我也有第二个问题:"MinGW-w64 Win32 Shell和MSYS2 Shell有什么区别?"。我在这个官方维基页面上找到了答案。有关原始完整格式,请参阅原始页面。以下是截至2017年8月9日的页面相关部分。

MSYS2 susbsystems

MSYS2由三个子系统及其相应的软件包组成存储库、msys2、mingw32和mingw64。

mingw子系统提供本机Windows程序,并且是项目的重点。这些项目旨在与独立于其他子系统的其他Windows程序。

msys2子系统提供了一个主要与POSIX兼容的仿真用于构建软件、包管理和shell的环境脚本。这些程序位于虚拟的单根文件系统中(根目录是MSYS2安装目录)。已作出一些努力让程序与本机Windows程序配合良好,但不是无缝。

每个子系统都提供自己的本机(即目标=主机)编译器工具链,在msys2-devel中,mingw-w64-i686-toolchain,和mingw-w64-x86_64工具链。还有交叉编译器工具链带主机={i686,x86_64}-pc-msys和目标={i686,x86_64}-w64-mingw32在mingw-w64中交叉工具链,但这些工具链的用途有限,因为没有适用于它们的库包。

炮弹

每个子系统都有一个关联的"外壳",它本质上是一个集合允许子系统协作的环境变量正确地这些shell可以使用MSYS2中的启动器调用安装目录或使用Windows"开始"中的快捷方式菜单发射器设置MSYSTEM变量并打开终端带有适当外壳(bash)的窗口(mintty)。Bash依次来源/etc/profile,根据的值设置环境MSYSTEM。如果没有正确的环境,各种事情可能也会发生(有时无声地)打破。使用mingw子系统时出现异常来自纯Windows,不需要任何特殊环境除了PATH中的条目之外。不要将MSYSTEM设置在外壳之外,因为这也会破坏事物。

相关内容

最新更新