upgrade mingw32 to gcc 4.2.0

2024-01-14 11:32
文章标签 4.2 gcc mingw32 upgrade

本文主要是介绍upgrade mingw32 to gcc 4.2.0,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

GCC已经release到4.2.0版本了。用GNU的话说,This release is a major release, containing new features (as well as many other improvements) relative to GCC 4.1.x.
看一下changes,在优化方面,增加了一个option,可以规定参数之间及参数与全局数据间的关系。不过这个option是在语言标准下自动运行的。我水平比较低,没有能理解这个optione 有什么用。
语言方面,OpenMP已经在C,C++,Fortran是被支持了,这下对并发是一个很好我支持吧。
还有两个改进,也是关于option的,是溢出和top-level的,不理解,不管了。
C语言里,有一个比较有用的option,-Waddress,能检测可疑内存地址的使用。不过,有什么具体的效果还不清楚。
C++有一些细节性的改动,如模板的模板参数。还有一个有用的Option,-Wextra,会在
if (a) ;
  return 1;
 return 0;
 这样的代码里,给一个warnning。对新手可能比较有用,老鸟不大会出现这种错误。
 运行库方面,libstdc++添加了对TR1的支持,可以想见,GCC可能是会是最早的对c++0x标准支持的compiler了。
 还有-mtune=native和-march=native将会根据cpuid自动选architecture了,方便多了,不用记那么多东西了。
 
 OK,不管怎么样,升级是很不错的,如果你是gcc fans and c++ fans的话.
 在linux下,自然不用麻烦了,cygwin我不太习惯用,不伦不类的。mingw32才是win下的正选。不过网上已经有人做了,参考一下:
  http://www.cublog.cn/u/14337/showart.php?id=196265
 我就是照着这个compile的
 以下还有几个:
  http://forum.doom9.org/showthread.php?t=108215
  http://leekindo.googlepages.com/gcc-build
  http://hi.baidu.com/myangelsky/blog/item/997609e980dd903fb90e2d27.html
 
 OK,有了以上几个,就一定没有问题了。
 不过,如果你像我一样无聊,还喜欢自己乱搞的话,你一定会选自己的目录什么的来编译,如果这样的话,你就要注意了,在configure的时候,一定一定要用相对目录,不然的话……
 我就不幸被这个问题折磨了两个多星期,最后在mingw 的wiki上才找到根结,主要是gengtype这个东东。目前这个bug还没有fix,所以,要小心!
 还有,在make的时候,要加上-march和-mtune(或-mcpu),这样会让你compiler和快一点。不过如果你不清楚自己的cpu是什么march的话(应该不会吧^_!)你可以上gcc.gnu.org上去找,或是编译两次,第二次用上面说的-march=native和-mtune=native
 
 Finish!
 Enjoy!
 

这篇关于upgrade mingw32 to gcc 4.2.0的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/605016

相关文章

Linux编译器--gcc/g++使用方式

《Linux编译器--gcc/g++使用方式》文章主要介绍了C/C++程序的编译过程,包括预编译、编译、汇编和链接四个阶段,并详细解释了每个阶段的作用和具体操作,同时,还介绍了调试和发布版本的概念... 目录一、预编译指令1.1预处理功能1.2指令1.3问题扩展二、编译(生成汇编)三、汇编(生成二进制机器语

【CSS in Depth 2 精译_024】4.2 弹性子元素的大小

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一章 层叠、优先级与继承(已完结) 1.1 层叠1.2 继承1.3 特殊值1.4 简写属性1.5 CSS 渐进式增强技术1.6 本章小结 第二章 相对单位(已完结) 2.1 相对单位的威力2.2 em 与 rem2.3 告别像素思维2.4 视口的相对单位2.5 无单位的数值与行高2.6 自定义属性2.7 本章小结 第三章 文档流与盒模型(已

bash: arm-linux-gcc: No such file or directory

ubuntu出故障重装了系统,一直用着的gcc使用不了,提示bash: arm-linux-gcc: No such file or directorywhich找到的命令所在的目录 在google上翻了一阵发现此类问题的帖子不多,后来在Freescale的的LTIB环境配置文档中发现有这么一段:     # Packages required for 64-bit Ubuntu

编译linux内核出现 arm-eabi-gcc: error: : No such file or directory

external/e2fsprogs/lib/ext2fs/tdb.c:673:29: warning: comparison between : In function 'max2165_set_params': -。。。。。。。。。。。。。。。。。。 。。。。。。。。。。。。。 。。。。。。。。 host asm: libdvm <= dalvik/vm/mterp/out/Inte

【linux学习指南】Linux编译器 gcc和g++使用

文章目录 📝前言🌠 gcc如何完成🌉预处理(进行宏替换) 🌠编译(生成汇编)🌉汇编(生成机器可识别代码) 🌠链接(生成可执行文件或库文件)🌉函数库 🌠gcc选项🚩总结 📝前言 预处理(进行宏替换)编译(生成汇编)汇编(生成机器可识别代码)连接(生成可执行文件或库文件) 🌠 gcc如何完成 格式 :gcc [选项] 要编译的文件 [选项] [目标文

gcc编译常见问题

inux C gcc -lm     使用 math.h中声明的库函数还有一点特殊之处,gcc命令行必须加-lm选项 ,因为数学函数位于 libm.so 库文件中(这些库文件通常位于/lib目录下),-lm选项告诉编译器,我们程序中用到的数学函数要到这个库文件里找。本书用到的大部分库函数(例如printf)位于 libc.so 库文件中,使用libc.so中的库函数在编译时不需要加-l

C++入门(05-2)从命令行执行C++编译器_GCC

文章目录 GCC编译器1. 下载MinGW-w64,安装(不推荐)2. 使用MSYS2安装MinGW-w64(推荐)2.1 安装MSYS22.2 初始化和更新2.3 安装MinGW-w64编译器2.3 在MSYS2 Shell中导航到代码目录2.4 使用 g++ 编译2.5 运行可执行文件 GCC编译器 GCC(GNU Compiler Collection)是一个开源编译器集

gcc 编译器对 sqrt 未定义的引用

man sqrt  Link with -lm. gcc -o test test.c -lm 原因:缺少某个库,用 -l 参数将库加入。Linux的库命名是一致的, 一般为 libxxx.so, 或 libxxx.a, libxxx.la, 要链接某个库就用   -lxxx,去掉头 lib 及 "." 后面的 so, la, a 等即可。 常见的库链接方法为

linux编译器——gcc/g++

1.gcc linux上先要安装, sudo yum install gcc gcc --version 可以查看当前的版本 ,我们默认安装的是4.8.5的版本,比较低, gcc test.c -std=c99 可以使他支持更高版本的c标准 -o 可以殖指明生成文件的名字,可以自己命名,比如 gcc test.c -o my.exe -std=c99 或者 gcc -o my.exe

gcc make cmake例程

main.cpp文件: #include <iostream>#include "utils.h"int main(void) {int a = 1;int b = 2;int c = AddFunc(a, b);std::cout<< c <<std::endl;return 0;} utils.h文件: #pragma onceint AddFunc(int a, int b);