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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • HDU 4883 Best Coder Round 2 TIANKENG’s restaurant 解读

    HDU 4883 Best Coder Round 2 TIANKENG’s restaurant 解读

    2021年12月31日
  • leetcode 链表相加_数据结构与算法链表

    leetcode 链表相加_数据结构与算法链表给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] 不是子数组。/** * Definition for singly-linked list. * struct ListNode { * int val; *

    2022年8月9日
  • ForkJoin 线程池[通俗易懂]

    ForkJoin 线程池[通俗易懂]一、分而治之严格来讲,分而治之不算一种模式,而是一种思想。它可以将一个大任务拆解为若干个小任务并行执行,提高系统吞吐量。主要讲两个场景,Master-Worker模式,ForkJoin线程池。ForkJoin线程池是jdk7之后引入的一个并行执行任务的框架,其核心思想也是将任务分割为子任务,有可能子任务还是很大,还需要进一步拆解,最终得到足够小的任务。将分割出来的子任务放入双端队列中,然后几个启动线程从双端队列中获取任务执行。子任务执行的结果放到一个队列里,另起线程从队列中获取数据,合并结果。

    2022年9月20日
  • HttpURLConnection的方法setRequestProperty(参数)的参数解读和用法[通俗易懂]

    HttpURLConnection的方法setRequestProperty(参数)的参数解读和用法[通俗易懂]https://blog.csdn.net/zcf520android/article/details/51314959学到东西

    2022年9月4日
  • 【算法千题案例】每日LeetCode打卡——93.宝石与石头[通俗易懂]

    【算法千题案例】每日LeetCode打卡——93.宝石与石头[通俗易懂]算法题打卡:宝石与石头。没有特别幸运,那么请先特别努力,别因为懒惰而失败,还矫情地将原因归于自己倒霉。所以说,树倒了,没有一片雪花是无辜的

    2022年7月24日
  • linux下查看java进程日志,linux 下查看java进程[通俗易懂]

    linux下查看java进程日志,linux 下查看java进程[通俗易懂]Maven(二)使用eclipse创建maven多模块项目maven作为一种自动化构建工具,在现在的企业应用开发中运用非常普遍.企业项目一般都比较大,多采用maven管理的多模块项目,下面直接上创建步骤一.创建一个maven项目AndroidActivity的生命周期详解应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监…

    2022年8月24日

发表回复

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

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