windows - 如何编译mingw-w64-crt

标签 windows gcc compiler-errors mingw-w64 msys2

我在Windows 10上并使用最新版本的MSYS2(已安装gcc:pacman -S gcc)
我正在尝试从mingw-w64-v7.0.0编译mingw-w64-headersmingw-w64-crt在我的MSYS2安装目录C:\msys2内,我创建了mingw-w64文件夹,该文件夹在下面的prefix参数中引用。
要编译这些文件,我使用相同的步骤(在适当的地方替换库的名称):

mkdir mingw-w64-crt && cd mingw-w64-crt
../mingw-w64-v7.0.0/mingw-w64-crt/configure --prefix=/mingw-w64
make
make install
这适用于mingw-w64-headers,但是对于mingw-w64-crt,我在make步骤中遇到错误。具体来说:从类型'int'分配给' mbstate_t '{aka' struct匿名'}时的类型不兼容。可以找到更详细的错误图像here
我将对如何进行一些指导表示赞赏。

最佳答案

我建议您只打开MSYS2的MinGW环境之一(通过运行mingw32.exe或mingw64.exe),然后通过运行以下命令安装完整的MinGW-w64工具链:

pacman -S $MINGW_PACKAGE_PREFIX-toolchain
工具链包括GCC,MinGW-w64库和MinGW-w64 header 。如果这些预建的MinGW-w64东西对您来说足够好,那么您就大功告成。
如果要编译自己的MinGW-w64,则应该能够使用刚刚安装的环境来执行此操作。要仔细检查您使用的是正确的工具链,请运行which gcc并确保其返回/mingw64/bin/gcc/mingw32/bin/gcc

关于windows - 如何编译mingw-w64-crt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62676291/

相关文章:

windows - 如何覆盖或自定义 Windows 中的删除确认对话框?

c++ - CImg: 无法识别 jpg 格式

c - 在 linux mint 上编译 c 程序时如何修复异常错误?

c++ - 赛格温 : no header file found

c++ - 编译简单的openCV项目

c++ - 使用 istreambuf_iterator<> 将文件内容转换为字符串流

c++ - DeferWindowPos 和 SWP_SHOWWINDOW/SWP_HIDEWINDOW

c# - Windows Phone 8 - 使用 Binding 将 byte[] 数组加载到 XAML 图像中

objective-c - XCode 构建结果 : why is it so amazingly complex even for a hello world console app?

c - malloc() 和 memset() 行为