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平台。
MinGW MinGW-w64 TDM-GCC等工具链之间的差别与联系的更多相关文章
- 测试一下robotgo自动化操作,顺便解决了原来的mingw版本中只有gcc,没有g++的问题
参考:https://gitee.com/veni0/robotgo#examples 但是编译不成功 找到这个:https://gitee.com/veni0/robotgo#examples ( ...
- gcc 交叉工具链中工具使用(arm-linux-xxx)
在Ubuntu系统中使用 gcc 系列工具是在PC机上使用 arm-linux-gcc 编译的目标 是在 arm CPU上使用 一.安装交叉编译工具链 1. 编译工具怎么获取 1)从官网 http:/ ...
- codeblocks+Mingw 下配置开源c++单元测试工具 google test
google test 是google的c++开源单元测试工具,chrome的开发团队就是使用它. Code::Blocks 12.11(MinGW 4.7.1) (Windows版)Google T ...
- The MinGW and mingw-w64 projects.----GCC
https://gcc.gnu.org/install/binaries.html Installing GCC We are often asked about pre-compiled versi ...
- MinGW下载并配置gcc/g++编译环境
本文将讲解如何下载MinGW并配置gcc\g++编译环境 一.下载MinGW 在MinGW官网中下载“mingw-get-setup.exe” 官网传送门:http://www.mingw.org/ ...
- ---mingw Linux交叉编译给Window的工具
https://arrayfire.com/cross-compile-to-windows-from-linux/
- gcc编译工具生成动态库和静态库之一----介绍
1.库的分类 根据链接时期的不同,库又有静态库和动态库之分. 静态库是在链接阶段被链接的(好像是废话,但事实就是这样),所以生成的可执行文件就不受库的影响了,即使库被删除了,程序依然可以成功运行. ...
- gcc编译工具生成动态库和静态库
一. 库的分类 1.1. 静态库(.a) 1.1.1. 静态库的代码在编译过程中已经被载入可执行程序,因此体积比较大.所以生成的可执行文件就不受库的影响了,即使库被删除了,程序依然可以成功运行. 1. ...
- EGE图形库配置(Dev-C++ 5.10 , TDM GCC 4.8.1)
准备工作:1>Dev-C++ 5.10版本 系统 Win XP/WIN 7 2>下载EGE图形库“ege-13.04.02-full” !,关于本次配置的Dev-C++的信息见如: ...
随机推荐
- Android 之SparseArray<E>详解
SparseArray是android里为<Interger,Object>这样的Hashmap而专门写的class,目的是提高效率,其核心是折半查找函数(binarySearch) pr ...
- 浅析SSH核心原理(二)
Hibernate是一个开放源代码的ORM(对象-关系映射)框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hibernate可以应用在任 ...
- CSS属性总结——思路很清晰
CSS 属性总结 CSS的属性是用来改变文档元素的状态的,其中主要改变两方面的东西,即位置.样式,现在我们就将CSS的属性分为定位和样式两方面来总结,知识结构图如下: 用来定位的属性: 在同一 ...
- How to Create Dump File for Applications
使用WinDBG这个工具,可以在应用程序异常终止或者无响应时获取它的尸体,以用来解剖研究. Creating Dump File 在Vista环境中抓取Dump文件很方便,在task man ...
- 设置HTTP代理
Maven通过<<UserHome>>/.m2/settings.xml(如果没有该文件,复制<<MavenHome>>/conf/settings.x ...
- Cocos2d-x教程(30)-3.x版本号物理引擎的使用
转载时请注明原文出处 : http://blog.csdn.net/u012945598/article/details/38417333 在Cocos2d-x 2.x的版本号中,开发人员能够直接使用 ...
- android5.0(Lollipop) BLE Central牛刀小试
转载请表明作者:http://blog.csdn.net/lansefeiyang08/article/details/46482073 昨天写了android L BLE Peripheral的简单 ...
- Swift - 同步请求获取网络数据
使用NSURLConnection可以实现http通信.它提供了异步请求和同步请求两种通信方式. 注意:同步请求数据会造成主线程阻塞,必须请求结束后用户才能做其他的操作,所有通常在请求大数据或者网络不 ...
- 6.MIL采集和实时显示
前面讲到的都是离线的图像获取方法,实际中我们做机器视觉都是在线采集图像和处理,处理结果决定了计算机要给出的控制信号如电机运动等,这样就实现了实时视觉反馈运动.MIL中的采集需要Matrox采集板卡的支 ...
- Mac os 进行Android开发笔记(2)
Mac OS X 下开发 Android 1> MAC OS Android环境搭建: 2>MAC OS 配置 Andoid ADB: 3>MAC OS 上进行Android真机 ...