MinGW

✍ dations ◷ 2025-07-11 07:17:21 #SourceForge项目,GNU,程序设计工具,编译器软件,C编译器,公有领域软件

MinGW(Minimalist GNU for Windows),又称mingw32,是将GCC编译器和GNU Binutils移植到Win32平台下的产物,包括一系列头文件(Win32API)、库和可执行文件。

另有可用于产生32位及64位Windows可执行文件的MinGW-w64项目,是从原本MinGW产生的分支。如今已经独立发展。

MinGW是从Cygwin(1.3.3版)基础上发展而来。

GCC支持的语言大多在MinGW也受支持,其中涵盖C、C++、Objective-C、Fortran及Ada。

对于C语言之外的语言,MinGW使用标准的GNU运行库,如C++使用GNU libstdc++。

但是MinGW使用Windows中的C运行库。因此用MinGW开发的程序不需要额外的第三方DLL支持就可以直接在Windows下运行,而且也不一定必须遵从GPL许可证。这同时造成了MinGW开发的程序只能使用Win32API和跨平台的第三方库,而缺少POSIX支持,大多数GNU软件无法在不修改源代码的情况下用MinGW编译。

Cygwin 与 MinGW 皆可用来移植 Unix 软件到 Windows,但它们采用截然不同的实现。Cygwin 旨在提供一个完整的 POSIX 层,包括主流 Unix 的系统调用及库实现;其重视兼容性优先于性能。相对的,MinGW 则着重简化与性能。因此,它并不提供某些难以用 Windows API 实现的 POSIX API,例如 fork(),mmap() 和 ioctl()。使用跨平台库写成的应用,若库本身已移植到了 MinGW(例如 SDL、wxWidgets、Qt 或 GTK+),则那些应用通常也容易用 MinGW 编译。

用 Cygwin 写成的 Windows 程序,因为是运行在公共著作权的兼容 DLL 上,所以 DLL 必须随着程序源代码一起发布。MinGW 则不需要兼容层,因为基于 MinGW 的程序是直接调用 Windows API 编译的。

MinGW 搭配 MSYS 可以产生一个小却完整的运行环境,让程序可以加载随身设备当中,却不动到注册表或产生额外文件。

在 POSIX 系统下,用 MinGW-GCC 交叉编译 Windows 应用也是可行的。这意味着开发者不需要安装 Windows 与 MSYS 才能编译 Windows 软件,或 Windows+Cygwin 软件。

MinGW编译器在实现异常机制时,有三种可选方式:

MinGW-w64是2005年由OneVision Software根据洁净室设计原则而独立开发,以解决当时的MinGW项目更新缓慢,缺少新的重要的API以及64位支持。2008年MinGW-w64项目开源,由Kai Tietz维护。

很多非官方组织提供了包含一系列集成工具链的MinGW安装包。其中大部分基于MinGW-w64项目。

相关

  • 洛歇L-1049超级星座式洛克希德L-1049超级星座式(Lockheed L-1049 Super Constellation),是洛克希德公司在1951年到1958年生产的飞机。1950年首飞。这款飞机也为美国海军和美国空军生产。洛克希德
  • 嘻哈音乐嘻哈音乐也译说唱音乐(英语:Hip-hop Music,也叫做hip-hop或rap music,),是一种跟着伴奏、带着韵律吟诵即说唱/说唱的音乐风格。所用的伴奏多产生于音乐取样的方式,亦被称作“嘻哈音
  • 文竹镇文竹镇可以指:
  • 马萨诸塞理工学院马萨诸塞理工学院(英语:Massachusetts Institute of Technology,缩写为MIT),位于美国马萨诸塞州剑桥市,是一所著名的私立研究型大学。学校成立于1861年,主校区沿查尔斯河而建,当时目
  • 埃莉诺·兰伯特埃莉诺·兰伯特(英语:Eleanor Lambert Berkson)(1903年08月10日-2003年10月7日)是纽约时装周的创办人,美国时尚界及公关界的核心人物。兰伯特出生于印第安纳州的克劳福兹维尔,于约翰
  • 林鹗明《三才图会》载《刑部右侍郎林公像》林鹗(1423年-1476年),字一鹗,浙江承宣布政使司台州府黄岩县(今浙江省黄岩市)人,明朝政治人物。浙江乡试第二十六名。景泰二年(1451年)进士,授监察
  • Un-24un-24是一种真菌基因,最早发现于模式生物粉色面包霉菌(),编码核糖核苷二磷酸还原酶大亚基,与其异核体不亲和性(heterokaryon incompatibility)有关。
  • 南湖碎雪草南湖碎雪草(学名:)又名南湖大山碎雪草、南湖小米草、高山小米草,属于玄参科碎雪草属,是台湾特有种高山植物,也是台湾少数存留的冰河孑遗植物,为多年生宿根性草本植物。分布于台湾海
  • 西卫滩坐标:7°53′00″N 110°00′00″E / 7.88333°N 110.00000°E / 7.88333; 110.00000西卫滩,位于万安滩东北方,广雅滩西南部,由珊瑚礁及珊瑚沙组成,属水下礁滩。该滩呈南一北走向
  • 拉什达·琼斯拉什达·琼斯 ( /rəˈʃiːdə/ ; 出生于1976年2月25日) 是美国女演员、导演、作家和制片人。 琼斯出生于加利福尼亚州的洛杉矶,她的父母分别是Quincy Jones和Peggy Lipton