MinGW

✍ dations ◷ 2025-11-30 18:36:37 #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项目。

相关

  • 地质学地质学(法语、德语:Geologie;英语:Geology;拉丁语、西班牙语:Geologia;源于希腊语 γῆ 和 λoγία)是对地球的起源探讨压力与时间、历史和结构进行研究的学科。主要研究地球的物
  • 普桑主义普桑派是十八世纪法国画家,强调线条比色彩重要。普桑指的是法国17世纪画家尼古拉·普桑推崇他研究文艺复兴时间绘画的专注。而与之相反的是鲁本斯派,他们认为色彩更重要。鲁本
  • DNA黏合酶DNA连接酶(EC 6.5.1.1),也称DNA黏合酶,在分子生物学中扮演一个既特殊又关键的角色,那就是把两条DNA黏合成一条。无论是双股或是单股DNA的黏合,DNA连接酶都可以借由形成磷酸双脂键
  • 敌敌畏敌敌畏(dichlorvos, DDVP)又称二氯松,属于有机磷酸酯类化合物,分子式C4H7Cl2O4P,是一种常用的环境卫生杀虫剂。可由三甲氧基膦和三氯乙醛反应得到。
  • 哥德防线加拿大军事行动哥德防线(意大利语:Linea Gotica)是第二次世界大战的最后阶段中,阿尔贝特·凯塞林陆军元帅沿亚平宁山脉顶峰所设的最后一条主要防线,当时在意大利战斗中撤退的德军
  • 前寒武纪前寒武纪(英语:Precambrian)是地质年代中,对于显生宙之前数个宙(eon)的非正式涵盖统称,原本正式的名称是隐生宙或隐生元(Cryptozoic eon),但后来拆分成冥古宙、太古宙与元古宙三个时代
  • 刘德宽刘德宽(1826年-1911年),字敬远,河北沧州人,沧洲六合拳传人,精于大枪,人称大枪刘。在家学得父亲刘仕俊之鹰爪拳术,在神机营当过差,在和盛镖局当过镖师,曾师从沧洲六合拳传人李凤岗学技,亦
  • 欧文·潘诺夫斯基欧文.潘诺夫斯基(Erwin Panofsky,1892-1968)为德国犹太裔艺术史学者,以图像学三段分析理论奠基后世图像学研究基础,并明确界定出“图像志”(iconography)与“图像学”(iconology)以及
  • 陈赛娟陈赛娟(1951年5月21日-),女,浙江鄞县人,中国血液病学家和分子遗传学家,中国工程院院士。其丈夫为中国科学院院士、原卫生部部长陈竺。陈赛娟1989年获法国巴黎第七大学博士学位,现任
  • 布莱恩·施威泽布莱恩·施威泽(Brian Schweitzer;1955年9月4日-)是美国的一位政治人物。在2005年至2013年期间,布莱恩·施威泽担任第23任蒙大拿州州长职务。他的党籍是民主党。施威泽在2004年州