MinGW MinGW-w64 TDM-GCC等工具链之间的差别与联系「建议收藏」

MinGW MinGW-w64 TDM-GCC等工具链之间的差别与联系

大家好,又见面了,我是全栈君。

不当之处,尽请指正。


同样点:

一、 他们都是用于编译生成Windows应用程序的工具链。

二、 他们都是基于gcc的。


不同之处(仅仅说大的):

一、项目之间的关系

1. MinGW应该是最先诞生的。

2. MinGW-w64项目最初是做为MinGW的一个分支而诞生,但如今已经独立发展。具体信息參见:

http://sourceforge.net/apps/trac/mingw-w64/wiki/History

http://zh.wikipedia.org/wiki/MinGW

3. TDM-GCC及其它类似的编译器集成包

 TDM-GCC是非官方组织提供及维护的编译器集成包换句话说,他不是由MinGW或MinGW-w64项目官方提供的编译器集成包

但他基于MinGW及MinGW-w64。

并且。他也有他的长处:

比如,TDM-GCC集成了:

最新的稳定版本号的GCC工具集,

 一些有用的补丁,

MinGW及MinGW-w64中的执行时API。

具体信息,參考:http://tdm-gcc.tdragon.net/about

除了TDM-GCC之外,类似的非官方编译器集成包有

Boost Science Package 、TakeoffGW等(当中大多基于MingGW-w64项目)。

很多其它编译器集成包參见:http://zh.wikipedia.org/wiki/MinGW


二、功能区别

1.  MinGW

貌似仅仅能编译生成win32程序。


2.  MinGW-w64

支持编译生成Win32与Win64的windows程序。

3. TDM-GCC及其它非官方的编译器集成包

看他们基于什么项目。多数预计能支持编译生成Win32与Win64的windows程序。


三、执行平台

1.  MinGW

仅仅能执行在windows平台。


2.  MinGW-w64

在Win32、Win64、Linux 32、Linux 64等主流平台上都有版本号可用。

详见:http://mingw-w64.sourceforge.net/download.php


3. TDM-GCC及其它非官方的编译器集成包

没细考证过。

预计多半是执行在windows平台。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116391.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月22日 上午7:00
下一篇 2022年1月22日 上午8:00


相关推荐

  • cordova declare styleable 错误「建议收藏」

    cordova declare styleable 错误「建议收藏」出现ERROR:InFontFamilyFont,unabletofindattribute可以使用cordovapluginaddcordova-plugin-file-opener2cordova-android-support-gradle-release命令安装支持现在版本的插件解决问题

    2022年7月13日
    21
  • 门面模式和适配器模式_数字化门店转型

    门面模式和适配器模式_数字化门店转型门面模式Facade动机模式定义结构要点总结笔记动机上述A方案的问题在于组件的客户和组件中各种复杂的子系统有了过多的耦合,随着外部客户程序和各子系统的演化.这种过多的耦合面临很多变化的挑战如何简化外部客户端和系统间的交互接口呢?如何将外部客户程序的演化和内部子系统的变化之间的依赖相互解耦模式定义为子系统中的一组接口提供一个**一致(稳定)**的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用(复用)结构要点总结从客户程序的角度来看,Facade模式简化了整个

    2022年8月9日
    6
  • 矩阵组合matlab,matlab中矩阵的所有组合[通俗易懂]

    这是一个更简单(原生)的解决方案,包含perms和meshgrid:N=size(A,1);X=perms(1:N);%#PermuationsofcolumnindicesY=meshgrid(1:N,1:factorial(N));%#Rowindicesidx=(X-1)*N+Y;…

    2022年4月17日
    81
  • JavaScript 数组排序【六大方法】「建议收藏」

    JavaScript 数组排序【六大方法】「建议收藏」文章目录数组排序sort()方法冒泡排序选择排序插入排序快速排序希尔排序数组排序排序,就是把一个乱序的数组,通过我们的处理,让他变成一个有序的数组1.sort()方法sort()数组对象排序其原理是冒泡排序reverse()方法能够颠倒数组元素的排列顺序例如:vararr=[3,1,5,6,4,9,7,2,8];varasc=arr.sort()console.log(asc); //1,2,3,4,5,6,7,8,9vardesc=asc.

    2022年6月12日
    33
  • Python学习总结之基础语法知识汇总(一)

    Python学习总结之基础语法知识汇总(一)本文章包含了Python一系列基本知识,其中包括:基本数据类型(整数,浮点数,复数,字符串);分支语句;异常处理;函数;局部变量与全局变量;递归;组合数据类型(集合,元组,列表,字典);文件基本操作基本数据类型一,数字类型及操作(1)整数类型可正可负,无取值范围限制pow(x,y):计算x^y(2)浮点数类型存在不确定尾数 rou…

    2022年6月24日
    44
  • java执行curl命令带json(执行shell脚本命令)

    需要注意的是,命令需要以数组的形式传递参数,就是把正常的命令以空格切分成数组就行了。而且参数前后不能有空格,不然会报错。具体的测试代码如下:importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;publicclassTestCurl{p…

    2022年4月16日
    245

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号