最好的GCC for windows还是MinGW-w64官网

在网上看到已经有gcc-5.0.0,于是就找了大量已编译好的下载回来试用。结果是无一内部搭配了iconv的,因而在windows平台上不能在gbk与UTF-8之间转码。没办法!


而MinGW-w64已经是超越了MinGW成为事实上的标准【此话出自英文维基MinGW条目】。在MinGW-w64的官方网站上,有各种搭配的预编译软件下载:32位/64位;drawf/sjlj/seh的异常机制;POSIX/win32线程机制。虽然没有gcc-5.0.0版,但有最新稳定版4.9.2,下载后一试用果然支持:
-std=c++14
-finput-charset=gbk
-fexec-charset=gbk

原因很简单,这个版本gcc的编译选项中有一个--with-libiconv,所以编译器原生支持随便什么的字符集之间的转码。而且这么做的一个巨大好处是:源程序不用设置什么locale函数,就一句std::cout<<"中国";就能正确显示输出中文汉字。因为编译出的可执行文件的“执行字符集”(C++11语言标准中的概念)是本地操作系统的默认字符集gbk


ps.

下载了最新版本的gcc version 5.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project)。结果在codeblocks中编译报错:std=c++14 unrecognized command line option

在cmd中进到该目录去手工编译一个最简单源文件,显示:CreateProcess 找不到文件。终于我意识到,这是把64位的gcc编译器放在了\Program Files(x86)\目录中。把它移到\Program Files\目录,终于OK

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值