MinGW

✍ dations ◷ 2025-09-18 23:59:12 #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项目。

相关

  • 量子声学量子声学(quantum acoustics)是研究微观量子力学效应不可忽略时声现象的一个声学分支,属于声学和凝聚体物理学的交叉领域。量子声学最初是在20世纪30年代研究声光效应时开始的
  • 全民健保全民健康保险,一般简称为“全民健保”或“健保”,是一种强制性保险的福利政策,法源是依据《中华民国宪法增修条文》所实施的全民医疗保险制度。为增进全体国民健康,中华民国于19
  • 李子芳 (八极拳)李子芳(1916年-1984年),绰号“铁牛”,近现代八极拳武术家。祖父为清末民初名武师李书文。李子芳祖籍河北沧县,出生于天津小站镇,后人指出李子芳在家谱中为“芝”字辈,正确应为李芝芳
  • 东安那托利亚断层东安那托利亚断层是土耳其东部的主要断层,从死海断层北端开始,沿着安那托利亚板块和向北移动的阿拉伯板块朝东北方向延伸,终点是与北安那托利亚断层交会的卡利若瓦三向联结构造
  • 卢乔·达拉卢乔·达拉(Lucio Dalla,1943年3月4日-2012年3月1日),男性,意大利流行乐创作歌手、作曲家、音乐家与演员。卢乔·达拉在1960年代时,深受爵士乐熏陶,蜕变成为具有影响力、且赋有创意
  • 学研控股株式会社学研控股(日语:株式会社学研ホールディングス),是日本一家以教育书籍为业务中心的出版社,常被略称为学研(がっけん)。另有经营“学研教室”。前身为“株式会社学习研究社
  • 恰拉尔·瑟因居恰拉尔·瑟因居(Çağlar Söyüncü,1996年5月23日-),是一名土耳其足球运动员,现时效力英超俱乐部莱斯特城和土耳其国家足球队。司职中后卫。瑟因居于2016年夏季转会窗由阿特诺度
  • 明时历明时历可能指:
  • 易开罐花卉易开罐花卉就是简单的将花卉或是蔬菜种子放到易开罐里面,只要打开易开罐的开口与底下的排水孔,在经过7-14天之后,就可以看到种子萌芽,过一段时间就会开花。虽然是很简单的产品,却
  • 古登堡-里克特定律古登堡-里克特定律(英语:Gutenberg–Richter law)是地震学中的一个定律,表示震级与某一地区大于等于该震级的地震数量之间的关系,由地震学家宾诺·古登堡与查尔斯·弗朗西斯·里克