You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Windows上用MinGW-w64编译32位C++20应用的问题求助

解决MSYS2中32位MinGW-w64编译C++20应用的问题

1. 正确的安装包

你安装的mingw-w64-i686-toolchain是正确的,但必须在MINGW32 shell中通过pacman安装,而非MSYS shell。如果在MSYS shell安装,工具链会被放到非PATH路径下,导致无法直接调用。

2. 对应的GCC可执行文件名称

在MINGW32环境中,可直接使用简化命名的可执行文件:

  • C编译器:gcc
  • C++编译器:g++
    如果需要明确指定交叉编译前缀,也可以使用i686-w64-mingw32-gcc和i686-w64-mingw32-g++,两者功能完全一致,只是命名不同。

3. 操作的Shell环境

必须使用MINGW32 shell(开始菜单MSYS2文件夹下的“MSYS2 MinGW 32-bit”):

  • MSYS shell是类Unix兼容环境,默认PATH不包含32位MinGW工具链;
  • MINGW64 shell对应64位工具链,无法生成32位目标程序。

验证步骤

  1. 打开MINGW32 shell;
  2. 执行安装/更新命令:pacman -Syu mingw-w64-i686-toolchain;
  3. 输入gcc --version,输出应包含i686-w64-mingw32标识,且版本需支持C++20(当前MSYS2提供的版本均默认支持,编译时添加-std=c++20参数即可)。

内容的提问来源于stack exchange,提问作者Warpspace

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 17:39:58