首页 > 系统相关 >MinGW -- Minimalist GNU for Windows

MinGW -- Minimalist GNU for Windows

时间:2024-05-22 23:07:38浏览次数:28  
标签:Minimalist GNU -- Windows 编译器 MinGW Linux

MinGW,是Minimalist GNU for Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序使用微软的标准C运行时(C Runtime)库(MSVCRT.DLL),该库在所有的 NT OS 上有效,在所有的 Windows 95发行版以上的 Windows OS 有效,使用基本运行时,你可以使用 GCC 写控制台模式的符合美国标准化组织(ANSI)程序,可以使用微软提供的 C 运行时(C Runtime)扩展,与基本运行时相结合,就可以有充分的权利既使用 CRT(C Runtime)又使用 WindowsAPI功能。

 

 

MinGW全称Minimalist GNU For Windows,是个精简的Windows平台C/C++、ADA及Fortran编译器,相比Cygwin而言,体积要小很多,使用较为方便。MinGW提供了一套完整的开源编译工具集,以适合Windows平台应用开发,且不依赖任何第三方C运行时库。

MinGW包括:

  • 一套集成编译器,包括C、C++、ADA语言和Fortran语言编译器
  • 用于生成Windows二进制文件的GNU工具的(编译器、链接器和档案管理器)
  • 用于Windows平台安装和部署MinGW和MSYS的命令行安装器(mingw-get)
  • 用于命令行安装器的GUI打包器(mingw-get-inst)

====================================================================

1. GNU( GNU's Not Unix! ) 是一个计划,目标就是实现开源:GNU计划致力于开发一个自由并且完整的类Unix操作系统

===》为啥不直接用Unix 是因为 Unix后来商业化了不能用了

2. GNU干了啥:它创造了无数的重要的工具,例如:强健的编译器,有力的文本编辑器,甚至一个全功能的操作系统(除了operation system 的 kernel)

但是!GNU一直没有开发操作系统的kernel

3. GNU和Linux 关系 :

1991年 Linus Torvalds 发布Linux 内核,而后,将GNU组件迁移到Linux上,使这些组件可以运行于Linux内核上。此时 一个完整的操作系统 合体了

Linux往往和GNU一并被提起,Linux不属于GNU项目,但Linux满足GNU项目提出的标准GPL

==》因此,Linux和GNU的关系是:

linux作为operation system的kernel ;

GNU项目提供 编辑器(EMACS)、编译器(GCC)、调试器(GDB)、汇编器、链接器、处理二进制文件的工具等等一系列构成operation system的必要组件
链接:https://blog.csdn.net/qq_41764621/article/details/127176135

====================================================================

(END)

按  q  退出

 

====================================================================

 

 

====================================================================

====================================================================

 

标签:Minimalist,GNU,--,Windows,编译器,MinGW,Linux
From: https://www.cnblogs.com/emanlee/p/18205321

相关文章

  • Nginx限制单独iP单位时间内请求次数
    http{#限速区域设置,一个IP1次请求/每秒limit_req_zone$binary_remote_addrzone=dynamic:10mrate=1r/s;server{#动态请求的限速规则location/{#动态请求的限速规则,突发请求最高5个limit_reqzone=dynamicburst=5nodelay......
  • C++类中封装指针函数
      classMyClass{public:voidfunc1(){//实现}voidfunc2(){//实现}//成员函数指针类型typedefvoid(MyClass::*MemberFuncPtr)();//一个成员函数指针成员变量MemberFuncPtrptrFunc;......
  • 开源Blazor UI组件库精选:让你的Blazor项目焕然一新!
    今天给大家推荐一些开源、美观的BlazorUI组件库,这些优秀的开源框架和项目不仅能够帮助开发者们提高开发效率,还能够为他们的项目带来更加丰富的用户体验。注:排名不分先后,都是十分优秀的开源框架和项目​AntDesignBlazorAntDesignBlazor是一个基于Blazor的前端UI组件库,......
  • skynet.newservice简介:服务的启动
    skynet是一个轻量级的游戏服务器框架。简介在skynet的体系中,服务是一个基础概念。通常,我们使用skynet.newservice来启动一个snlua服务。那么,当我们写下localaddr=skynet.newservice("test")这行代码时,系统是怎么运作的呢?思考一下这些问题:调用skynet.newservice会不会发......
  • luffy路飞项目上线03
    云服务器购买(领了3个月免费的)1#1咱们项目要上线2-1有台服务器:安装软件:mysql;运行django。。。3-2公网ip:互联网用户都可以访问4-3域名:备案,互联网用户都可以访问,输入地址,而不是ip567#2购买云服务器8-这台服务器--》不在......
  • Windows中实现将bat或exe文件作为服务_且实现命令行安装、配置、启动、删除服务
    一、背景描述在Windows环境下进行日常的项目开发过程中,有时候需要将bat文件或exe文件程序注册为Windows的服务实现开机自己运行(没有用户登陆,服务在开机后也可以照常运行)、且对于那些没有用户交互界面的exe程序来说只要在后台运行即可,无需在桌面显示该exe程序窗口内容、无......
  • 浅谈C#中取消令牌CancellationTokenSource
    基础操作CancellationTokenSourcecancellationTokenSource=newCancellationTokenSource();cancellationTokenSource.Token.Register(()=>{Console.WriteLine("取消了1111");});......
  • Wpf UI框架 MaterialDesign 的使用记录
    近期公司有桌面客户端的开发需求,并且对样式和界面反馈有一定的要求,对比各种开源UI框架后确认使用MaterialDesign。1、引入框架MaterialDesignThemes,注意下对应的版本号,我用的2.6.0的。原因嘛视频教程就是这个版本。  2、App.xaml中引用样式文件注释下面的可以先不用加,后面......
  • Ubuntu 解决 Too many open files 问题
    #查看限制结果ulimit-a#修改配置#删除最后一行echo-e"#add_config"|sudotee-a/etc/security/limits.conf#加上文本echo-e"\n"|sudotee-a/etc/security/limits.confecho-e"mzc\tsoft\tnproc\t204800"|sudotee-a......
  • CodeForces 1965F Conference
    洛谷传送门CF传送门考虑题目可以看成天和人的匹配,因此判断单个日期区间\([l,r]\)可以考虑Hall定理,设\(N(S)\)为在\(S\)这些天有空的人的数量,定义\(S\)合法当且仅当\(|N(S)|\ge|S|\),那么\([l,r]\)合法当且仅当\(\forallS\subseteq[l,r]\),\(S\)合法。猜......