Cygwin

✍ dations ◷ 2025-11-11 10:51:52 #兼容层,程序设计工具,自由编译器与直译器,自由仿真软件,用C编程的自由软件,红帽公司,系统管理,Windows独占自由软件

Cygwin是许多自由软件的集合,最初由Cygnus Solutions开发,用于各种版本的Microsoft Windows上,运行类UNIX系统。Cygwin的主要目的是通过重新编译,将POSIX系统(例如Linux、BSD,以及其他Unix系统)上的软件移植到Windows上。Cygwin移植工作在Windows NT上比较好,在Windows 95和Windows 98上,相对差劲一些。目前Cygwin由Red Hat等负责维护。

Cygwin包括了一套库,该库在Win32系统下实现了POSIX系统调用的API;还有一套GNU开发工具集(比如GCC、GDB),这样可以进行简单的软件开发;还有一些UNIX系统下的常见程序。2001年,新增了X Window System。

另外还有一个名为MinGW的库,可以跟Windows本地的MSVCRT库(Windows API)一起工作。MinGW占用内存、硬盘空间都比较少,能够链接到任意软件,但它对POSIX规范的实现没有Cygwin库完备。

Red Hat规定,Cygwin库遵守GNU通用公共许可证,但也可以跟符合开源定义的自由软件链接。Red Hat另有价格不菲的许可协议,这样使用Cygwin库的专属软件,就可以进行再发布。

用户可以通过Cygwin Mailing Lists 页面存档备份,存于互联网档案馆,订阅若干个Cygwin相关的邮件列表。

Cygwin始于1995年,最初作为Cygnus工程师Steve Chamberlain的一个项目。当时Windows NT和Windows 95将COFF作为目标代码,而GNU已经支持x86和COFF,以及C语言库newlib。这样至少在理论上,可以将GCC重定向,作为交叉编译器,从而产生能在Windows上运行的可执行程序。在后来的实践中,这很快实现了。

接下来的问题是如何在Windows系统中引导编译器,这需要对Unix的足够模拟,以使Autoconf的shell script可以运行,这样就用到像bash这样的shell,进而需要Fork和标准流。Windows含有类似的功能,所以Cygwin库只需要进行翻译调用、管理私有数据,比如文件描述符。

1996年后,由于看到cygwin可以提供Windows系统上的Cygnus嵌入式工具(以往的方案是使用DJGPP),其他工程师也加入了进来。特别吸引人的是,Cygwin可以实现三路交叉编译(three-way cross-compile),例如可以在Sun工作站上构建,如此就形成Windows-x-MIPS 交叉编译器,这样比单纯在PC上编译要快不少。1998年起,Cygnus开始将Cygwin包作为产品来提供。

相关

  • glucogenic amino acid生糖氨基酸(英语:glucogenic amino acid)是指在体内能转化生成葡萄糖、糖原的氨基酸。生糖氨基酸有15种:丙氨酸、甘氨酸、丝氨酸、苏氨酸、半胱氨酸、谷氨酸、谷氨酰胺、精氨酸
  • 电弧焊电弧焊是利用电弧作为热源的熔焊方法,简称弧焊。其基本原理是利用电弧是在大电流(10至200A)以及低电压(10至50V)条件下通过一电离气体时放电所产生的热量,来熔化焊条与工件使其在
  • 曾金莲曾金莲(1964年6月26日-1982年2月14日),中华人民共和国湖南省沅江市南嘴镇余家村人。是世界上已知身高最高的女子,身高达2.49米。曾金莲自幼力大,14岁时,身高猛增至2.34米,体重达132
  • 外百老汇音乐剧外百老汇音乐剧 (英文:Off-Broadway ) ,简称外百老汇,指的是美国纽约市演出规模较百老汇音乐剧小型的剧场演出,剧场座位介于100到499个之间。在曼哈顿更外围及更小型的剧场Off-
  • 宋世荣宋世荣(1849年-1927年),字约斋,大兴(今北京)人,祖籍金陵,清末民初武术家,李洛能门下八大弟子之一。功夫以柔化见称,擅长燕形。宋世荣出生钟表世家,自小承继了家族的钟表手艺,宋世荣喜好围
  • 吉洪诺夫定理在数学上,吉洪诺夫(Тихонов)定理断言,任意个紧致空间的乘积空间对于乘积拓扑是紧致的,这个定理1930年由苏联数学家安德烈·尼古拉耶维奇·吉洪诺夫发表。这个定理在微分拓
  • 藤田哲也 (气象学家)藤田哲也(英语:Tetsuya Theodore "Ted" Fujita,1920年10月23日-1998年11月19日),日裔美籍气象学家,以研究极端强烈风暴而闻名。他在芝加哥大学对雷暴、龙卷风、飓风和台风的研究彻
  • 郭东郭东(?-?),字仁府,山西泽州高平县人,民籍,明朝政治人物。山西乡试第二十名举人。嘉靖三十五年(1556年)中式丙辰科三甲第一百七十四名进士。任刑部主事时,以亲老不能抵任,上疏请求去官终养
  • 孙玉清孙玉清(1909年3月-1937年5月),湖北黄安县(今红安县)高桥区人,中国工农红军高级将领。1927年11月,孙玉清参加了黄麻起义。1929年,他参加了中国工农红军,后加入中国共产党。此后他参加了
  • 余先予余先予(1936年5月4日-2020年9月8日),男,湖南长沙人,中国著名的国际法学家。主要从事国际私法、国际经济法、国际贸易法、国际投资法、涉外经济法研究与教育,是中国国际私法学科的重