使用 MinGW 在 Windows 上编译 32 位现代应用程序

问题描述 投票:0回答:1

我希望使用 MinGW 从包含 c++20 的源代码编译一个 32 位应用程序。因此,显然 OG MinGW 不会因为现代 C++ 的编译器支持而削减它,但我需要使用 MinGW-w64。

尽我所能,我似乎无法找到可以找到 32 位版本 MinGW-w64 的工作 MSys。

我已经安装了

mingw-w64-i686-toolchain
,但
/bin
/usr/bin
似乎都不包含适当的GCC可执行文件(我正在寻找
i686-w64-mingw32-gcc
,但没有任何类似的东西存在)。我假设我需要另一个命令,但已经尝试了谷歌和堆栈溢出几个小时,但不知道那可能是什么。

要在 MSys 中安装的适当软件包以及 GCC 可执行文件的适当名称是什么?

另外,我是否需要处于

MSYS2
MINGW32
MINGW64
shell 中,还是没关系?

winapi compilation mingw-w64 32-bit toolchain
1个回答
0
投票

我已经安装了

mingw-w64-i686-toolchain
,但
/bin
/usr/bin
似乎都不包含适当的GCC可执行文件(我正在寻找
i686-w64-mingw32-gcc
,但没有任何类似的东西存在)。

MSYS2将MSYS2工具和mingw-w64工具存放在不同的路径下。这意味着您无法在

/bin
/usr/bin
下找到本机编译器;相反,您应该能够在
/mingw32/bin
下找到针对 i686 的工具,在
/mingw64/bin
/ucrt64/bin
下找到针对 AMD64 的工具。

另外,我是否需要处于

MSYS2
MINGW32
MINGW64
shell 中,还是没关系?

您应该使用

MINGW32
shell 为 i686 Windows 目标进行编译。

© www.soinside.com 2019 - 2024. All rights reserved.