Mingw和DEV-C++有什么联系?

youngshuaishuai 2007-09-21 10:15:56
Mingw不是一些头文件和库文件。
安装DEV-C++后,会有Mingw32-g++.exe命令,这个命令是干什么
用的。Mingw和DEV-C++到底有什么联系?
对于开源的一些软件之间的一些关系,一直搞不清楚
GCC MAKE Mingw Cygwin
...全文
1702 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
fox000002 2008-05-02
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 iambic 的回复:]
MinGW可以看作GCC在windows上的一个port。Dev-Cpp提供一个前端而已,并没有自己的编译器。
[/Quote]

DevCPP 已经停止更新很久了吧,建议试试 CodeBlocks,可以自定义编译器
FinalHacker 2008-05-01
  • 打赏
  • 举报
回复
像这类小型win32 IDE基本上都是默认使用MinGW最为编译器。
knowledge_Is_Life 2008-05-01
  • 打赏
  • 举报
回复
接分先!
crashbluebird 2008-03-15
  • 打赏
  • 举报
回复
去项目主页看看不就行了
这都要问
hyong11 2008-03-09
  • 打赏
  • 举报
回复
说得不错
星羽 2007-09-23
  • 打赏
  • 举报
回复
还是摆渡

cygwin是一个在windows平台上运行的unix模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多好东西,著名的还有eCos,不过现已被Redhat收购)。它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用gnu工具集在windows上进行嵌入式系统开发,非常有用。随着嵌入式系统开发在国内日渐流行,越来越多的开发者对cygwin产生了兴趣。

cygnus当初首先把gcc,gdb,gas等开发工具进行了改进,使他们能够生成并解释win32的目标文件。然后,他们要把这些工具移植到windows平台上去。一种方案是基于win32 api对这些工具的源代码进行大幅修改,这样做显然需要大量工作。因此,他们采取了一种不同的方法——他们写了一个共享库(就是cygwin dll),把win32 api中没有的unix风格的调用(如fork,spawn,signals,select,sockets等)封装在里面,也就是说,他们基于win32 api写了一个unix系统库的模拟层。这样,只要把这些工具的源代码和这个共享库连接到一起,就可以使用unix主机上的交叉编译器来生成可以在windows平台上运行的工具集。以这些移植到windows平台上的开发工具为基础,cygnus又逐步把其他的工具(几乎不需要对源代码进行修改,只需要修改他们的配置脚本)软件移植到windows上来。这样,在windows平台上运行bash和开发工具、用户工具,感觉好像在unix上工作。
星羽 2007-09-23
  • 打赏
  • 举报
回复

摆渡

MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称。详情请参考<http://www.mingw.org>。

这里的“纯粹”是指「使用msvcrt.dll的应用程序」。无法使用MFC (Microsoft Foundation Classes)。

MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时库。

MinGW,即 Minimalist GNU For Windows。它是一些头文件和端口库的集合,该集合允许人们在没有第三方动态链接库的情况下使用 GCC(GNU Compiler C)产生 Windows32 程序。
在基本层,MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序使用微软的标准C运行时间库(MSVCRT.DLL),该库在所有的 NT OS 上有效,在所有的 Windows 95 发行版以上的 Windows OS 有效,使用基本运行时间,你可以使用 GCC 写控制台模式的符合美国标准化组织(ANSI)程序,可以使用微软提供的 C 运行时间扩展。该功能是 Windows32 API 不具备的。下一个组成部分是 w32api 包,它是一组可以使用 Windows32 API 的包含文件和端口库。与基本运行时间相结合,就可以有充分的权利既使用 CRT(C Runtime)又使用 Windows32 API 功能。

MinGW 官方网站为 http://www.mingw.org
实际上 MinGW 并不是一个 C/C++ 编译器,而是一套 GNU 工具集合。除开 GCC (GNU 编译器集合) 以外,MinGW 还包含有一些其他的 GNU 程序开发工具 (比如 gawk bison 等等)。
开发 MinGW 是为了那些不喜欢工作在 Linux(FreeBSD) 操作系统而留在 Windows 的人(比如我)提供一套符合 GNU 的 GNU 工作环境。
(此前的 cygwin 虽然也是 GNU 的 Windows 移植,但是 cygwin 是有版权的,而不是 GNU。)
所以,使用 MinGW 我们就可以像在 Linux 下一样使用 GNU 程序开发工具。

GCC 就是 MinGW 的核心所在,GCC 是一套支持众多计算机程序语言的编译系统,而且在语言标准的实现上是最接近于标准的。并且 GCC 几乎可以移植到目前所有可用的计算机平台。(我的电脑上就还装有 DevKitPro,里面包含 GCC 的 ARM(for GBA/DS/GP32) 和 MIPS(for PSP) 版本。)
GCC 本身不像 VC 那样拥有 IDE 界面(在 Windows 上也存在 Dev C++ 之类的支持 MinGW 编译器的 IDE)。源代码编辑你可以选用任何你喜欢的文本编辑器(据说微软的开发人员包括 VC 的开发都不用 VC 所带的 IDE 编辑器,而是选用 GNU 的 VIM 编辑器)。然后使用 make 等工具来进行软件项目的编译、链接、打包乃至发布。而像 cvs(svn) 源代码版本控制工具可以让世界上任何一个角落的人都可以参与到软件项目中来。

关于 MFC,微软基础库类,这个随 VC++ 携带的一个源代码公开的开发包,和其他 Windows 程序开发包是一样的。如果有 VC++ 的授权,你完全可以使用 MFC 的源代码,也就是你使用 GCC 来编译 MFC 程序是完全可以的。
当然,GNU 下也很多 Windows 程序开发包,甚至有一些是支持跨平台使用的。不仅仅可以直接把源代码编译为 Windows 程序,也可以不经修改编译为其他操作系统的图形程序。
不过 GNU 下,最流行的图形界面开发库是 GTK+。GTK+ 也能很好的运行在 Windows 平台(比如 GIMP 和 Gaim)。
总体说来,使用 MinGW 就是 GNU。
redleaves 2007-09-23
  • 打赏
  • 举报
回复
对于GCC来说,mingw32是一个平台,包括运行平台,目标平台.GCC可以在这个平台上运行,可以生成这个平台的目标代码.而这个平台事实上只是在win32平台上,对GCC运行所必须的接口进行了一下包装.cygwin和它很类似.区别在于mingw32进行的封装很简单,大多数接口是使用msvcrt.dll的.cygwin则完全重新实现了一套系统以及C的接口.很多gnu的东西可以不用修改就可以在cygwin下编译,使用.而mingw32这个平台则不行...
所以,cygwin的包很大,几乎所有常用的gnu软件在上面都有.而mingw32基本上只有binutils/gcc/make/win32api四个软件包...
dev-c++是前些年他们用DELPHI做的一个开源的IDE.有一个系列dev-pascal/dev-php...不过好像已经没有在开发了.它可以选用cygwin或mingw32平台下的gcc来编译.
iambic 2007-09-23
  • 打赏
  • 举报
回复
MinGW可以看作GCC在windows上的一个port。Dev-Cpp提供一个前端而已,并没有自己的编译器。
独孤过儿 2007-09-22
  • 打赏
  • 举报
回复
以MinGW为核心???两位是不是搞错啊

MinGW都是包装的GCC的东西啊,安装以后去C:\MinGWStudio 目录下一看便知
liubingqian 2007-09-22
  • 打赏
  • 举报
回复
MinGW是gcc的Windows实现,包括编译器、链接器等等。Dev-C++是以MinGW为核心的集成开发环境。
  • 打赏
  • 举报
回复
mingw是 gcc的windows版本
cygwin是在windows上模拟了一个linux环境

devcpp使用的编译器是mingw
独孤过儿 2007-09-21
  • 打赏
  • 举报
回复
基本上差不多,但是MinGW的检查要比Dev-C++严格一些,内部都是使用的gcc的编译器

GCC 是GNU的编译器族

MAKE 是一个工程管理的工具

Mingw 包装了GCC中关于C/C++的绝大部分的开发工具包

Cygwin 一个Windows平台上的虚拟linux的软件。在其上可以执行linux大部分的操作

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧