【发布时间】:2015-08-21 16:25:02
【问题描述】:
我使用 Eclipse Mars 和 MSYS2。 Eclipse 无法识别我的 MSYS2 安装。它包含用于 32 位编译的 Mingw-w64。我在互联网上找到的东西不起作用。我该怎么办?
【问题讨论】:
我使用 Eclipse Mars 和 MSYS2。 Eclipse 无法识别我的 MSYS2 安装。它包含用于 32 位编译的 Mingw-w64。我在互联网上找到的东西不起作用。我该怎么办?
【问题讨论】:
好吧,聚会有点晚了,但看起来 MSYS2 并没有什么特别之处:设置 Eclipse 以使用 MinGW-w64 安装的常规过程对我来说效果很好。
主要问题是如Eclipse CDT FAQ 中所述,检测MinGW 工具链CDT 试图在PATH 中找到mingw32-gcc.exe,而MinGW-w64 在其bin 目录中只有gcc 和i686-w64-mingw32-gcc.exe,所以只是将 MinGW-w64 bin 目录添加到 PATH 是行不通的:
尽管在您的 PATH 中有 g++.exe 或 gcc.exe 并已定义 MINGW_HOME,你可能仍然会得到一个“工具链”MinGW GCC“不是 检测到”消息(Luna 4.4.0 上的 CDT 8.4)。确保一个文件 MINGW_HOME\bin 中存在名为“mingw32-gcc.exe”的文件。
正如 Eclipse CDT FAQ 中进一步提到的,简单的解决方法是将i686-w64-mingw32-gcc.exe 复制到mingw32-gcc.exe:
如果它不存在 (MinGW-W64 会发生这种情况),复制 -gcc.exe 文件(例如 i686-w64-mingw32-gcc.exe) 到 mingw32-gcc.exe。如果可怕的消息 仍然徘徊,重新启动系统(不要只是注销和 登录)。
完成上述复制后,您可以将 MinGW-w64 bin 目录添加到 PATH,Eclipse 会将 MinGW-w64 安装识别为 MinGW 工具链。由于我不喜欢在 Windows 设置中污染系统和用户环境变量的想法,我通常会编写一个简短的批处理文件,将 MinGW-w64 bin 目录添加到 PATH 然后为我启动 Eclipse:
SET PATH=c:\msys32\mingw32\bin;%PATH%
START c:\eclipse\eclipse.exe
【讨论】:
晚会更晚 - 对我来说,这个解决方案是:右键单击项目 -> 属性 -> C/C++ 构建 -> 环境:将环境变量 MINGW_HOME 设置为 C:/.../msys64/mingw64 单击确定,休息由eclipse自动完成
【讨论】: