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

相关文章

【服务器运维】CentOS7 minimal 离线安装 gcc perl vmware-tools

0. 本机在有网的情况下,下载CentOS镜像 https://www.centos.org/download/ 1. 取出rpm 有的情况可能不需要net-tools,但是如果出现跟ifconfig相关的错误,就把它安装上。另外如果不想升级内核版本的话,就找对应内核版本的rpm版本安装 perl-Time-Local-1.2300-2.el7.noarch.rpmperl-Tim

装gcc

下载https://anaconda.org/serge-sans-paille/gcc_49/files  需要的gcc版本 把它放到/export/xxx/conda/pkgs 下 source要装的那个环境 到/export/xxx/conda/pkgs 下执行:conda install --use-local gcc_49-4.9.1-6.tar.bz2 装好后,gcc -v 发

4.2、Django - URL之视图基本用法

此节介绍视图的基本用法。 视图 1、视图一般都是写在APP的views.py文件中 2、视图中函数的第一个参数永远都是request (一个HttpResponse)对象。该对象存储了请求过程中所有的信息,如:所需要的参数以及一些头部信息等 。在视图中,一般是完成逻辑相关的操作 。例如,该请求是添加文章列表,就可以通过request 来接受这些数据 ,然后存储到数据库,最后把执行结果返回浏览器

编程参考 - GCC的条件编译

4 Conditionals 条件是一种指令,它指示预处理器选择是否在传递给编译器的最终标记流中包含一段代码。预处理器条件可以测试算术表达式,也可以测试名称是否定义为宏,或者使用特殊的defined操作符同时测试这两种表达式。 A conditional is a directive that instructs the preprocessor to select whether o

GCC passes分析(一)

遍(passes)是GCC编译器源代码中的一个重要概念,对它们的理解是了解GCC源代码的架构的基础。本系列文章打算以此为契机,对GCC编译器源代码做一个概要性的分析,分析对象为GCC 4.9.1版本。 源代码中,与Pass相关的文件有:   1. passes.c   2. passes.def   3. pass_manager.h 另外,安装编译器的过程中,还会生成一个与pass相

GCC -fpie选项生成文件分析

不同选项下的虚拟内存分布 Linux系统下,ELF格式的可执行文件的各个段都会被分配到不同的虚拟内存空间中。在操作系统实现地址随机化机制(Address Space Layout Randomization)之前,程序在任意一次执行下,所使用的虚拟空间的地址往往是相同的。这就给恶意攻击者的攻击行为提供了很大的便利(见Stack Smashing for Fun and Profit)。以下述程序

Linux bash: /usr/local/gcc/bin/gcc: 不是目录

ln -s /usr/local/bin/gcc /usr/bin/gcc ln -s /usr/local/bin/g++ /usr/bin/g++ 创建的软连接不生效 问题: [root@dev003 local]# gcc -v bash: /usr/local/gcc/bin/gcc: 不是目录 或者 [root@dev003 local]# gcc -v bash: /usr

线程简介及其函数使用实例(gcc *.c -lpthread)

1.概念 线程(LWP(Light Weight process))           线程是轻量级的进程,(是比进程粒度更小的执行单元)进程是分配资源的最小单位(0-3G)(PS:一辆马车8匹马 进程 其中的一个马是线程),线程是调度(PS:或执行)的最小单位。线程本身不占用资源它是共享进程的资源(PS:一个进程中的许多线程 共享一个进程的0-3G空间)。线程没有进程安全,(PS:考虑安全

Linux GCC G++:各个版本发行年份及新增特性盘点

目录 GCC盘点 GCC 4.0 GCC 4.1 GCC 4.2 GCC 4.3 GCC 4.4 GCC 4.5 GCC 4.6 GCC 4.7 GCC 4.8 GCC 4.9 GCC 5.0 GCC 6.0 GCC 7.0 GCC 8.0 GCC 9.0 GCC 10.0 GCC 11.0 GCC 12.0 GCC 13.0 GCC稳定版本 GCC 4

【Linux】环境基础开发工具使用(yum、vim、gcc/g++、gdb、make/Makefile)

文章目录 Linux 软件包管理器 yumLinux开发工具Linux编辑器-vim使用vim的基本概念vim下各模式的切换vim命令模式各命令汇总vim底行模式各命令汇总批量化注释和批量化去注释vim简单的配置解决一个小问题 Linux编译器-gcc/g++作用gcc/g++ 语法预处理编译汇编链接什么是函数库 Linux调试器-gdb使用Linux项目自动化构建工具-make/Makef