GNU环境

GNU是一个自由的操作系统,其内容软件完全以GPL方式发布。这个操作系统是GNU计划的主要目标,名称来自GNU’s Not Unix!的递归缩写,因为GNU的设计类似Unix,但它不包含具著作权的Unix代码。GNU的创始人,理查德·马修·斯托曼,将GNU视为“达成社会目的技术方法”。

作为操作系统,GNU的发展仍未完成,其中最大的问题是具有完备功能的内核尚未被开发成功。GNU的内核,称为Hurd,是自由软件基金会发展的重点,但是其发展尚未成熟。在实际使用上,多半使用Linux内核、FreeBSD等替代方案,作为系统核心,其中主要的操作系统是Linux的发行版。Linux操作系统包涵了Linux内核与其他自由软件项目中的GNU组件和软件,可以被称为GNU/Linux(见GNU/Linux命名争议)。

GNU的环境MinGW和Cygwin,MinGW相当于是面向windows平台的环境,Cygwin是把Linux平台的API做了一个映射。

如果想开发跨平台应用,建议使用Cygwin环境;如果只是想开发一个面向windows平台的应用,建议使用MinGW环境。

MinGW和Cygwin的区别

  • MinGW:

修改编译器,让window下的编译器把诸如fork的调用翻译成等价的形式。经过编译器编译后,原linux下的代码可以在windows下运行。

  • Cygwin:

这修改库,让window提供一个类似unix提供的库,他们对程序的接口如同UNIX一样。CygWin提供了一个UNIX环境,使用CygWin可以在Windows下调用unix-like的API(比如说fork,select,dup)。

  • 选哪个?

    mingw的安装包比cygwin体积小。
    mingw是为了像在linux上写代码,并在windows上运行。
    mingw可以接近windows本地程序的性能。
    mingw编译的程序运行不依赖第三方库,体积小。

    cygwin是为了在windows上写linux代码。
    cygwin在windows上运行,性能不行。
    cygwin编译的程序,要依赖一个dll(cygwin1.dll)。
    cygwin有和linux完全一样的运行环境。

GNU官方 https://www.gnu.org/

Cygwin官网下载页面 http://cygwin.com/

MinGW官网下载页面 http://mingw.org/

承接各种网站开发与修改、爬虫、数据采集分析、小程序等任务

Html+Css+JS+PHP+Nodejs+Python

专治网站各种不服

一起探讨,互相学习,共同进步!有事儿您说话。

This entry was posted in C/C++, 开发工具与环境搭建 and tagged , , by 织梦先生. Bookmark the permalink.