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

如何查看mingw32-gcc-win32及x86_64-w64-mingw32-gcc-win32编译器的glibc版本

查看MinGW32/MinGW-w64 GCC对应的C标准库版本

首先需要明确:MinGW(包括mingw32-gcc-win32和x86_64-w64-mingw32-gcc-win32)默认不使用glibc,它依赖的是Windows系统的MSVCRT(Microsoft Visual C++ Runtime),以及MinGW自身提供的辅助运行库(如libmingwex、libstdc++等)。如果要确认相关库的版本,可以用以下方法:

方法1:通过编译器预定义宏查看

直接编译一段代码,打印预定义的版本宏:

  • 对于mingw32-gcc-win32:

    mingw32-gcc -E -dM - < /dev/null | grep -E "(MSVCRT|__MINGW32_VERSION|__GLIBC__)"
    

    注:如果输出中没有__GLIBC__相关宏,说明当前编译器未使用glibc;__MINGW32_VERSION会显示MinGW自身的版本,MSVCRT相关宏会显示依赖的Windows运行库版本。

  • 对于x86_64-w64-mingw32-gcc-win32:

    x86_64-w64-mingw32-gcc -E -dM - < /dev/null | grep -E "(MSVCRT|__MINGW64_VERSION|__GLIBC__)"
    

方法2:查看链接的运行库文件版本

找到MinGW安装目录下的运行库文件,比如libmsvcrt.a或libmingwex.a,通过以下方式查看版本:

strings /path/to/mingw/lib/libmsvcrt.a | grep -i version

替换/path/to/mingw为你的MinGW实际安装路径。

方法3:编译测试程序打印版本

编写一个简单的C程序,运行后输出相关版本信息:

#include <stdio.h>
#include <stdlib.h>

int main() {
    // 打印MinGW版本
    #ifdef __MINGW32_VERSION
    printf("MinGW32 Version: %s\n", __MINGW32_VERSION);
    #endif
    #ifdef __MINGW64_VERSION
    printf("MinGW64 Version: %s\n", __MINGW64_VERSION);
    #endif
    // 检查是否存在glibc
    #ifdef __GLIBC__
    printf("GLIBC Version: %d.%d\n", __GLIBC__, __GLIBC_MINOR__);
    #else
    printf("当前编译器未使用GLIBC,依赖Windows MSVCRT或MinGW自有运行库\n");
    #endif
    return 0;
}

编译运行:

  • 32位:mingw32-gcc test.c -o test && ./test
  • 64位:x86_64-w64-mingw32-gcc test.c -o test && ./test

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 17:40:49