如何解决gcc版本冲突?

转载 2016年08月31日 14:45:08

redhat也是一样 编译提示 cc1plus 错误 无法识别的命令行选项 -std=c++11  

gcc5.4 貌似没有cc  要拷贝软连接  ln -s  gcc cc

 今天碰到一个比较坑爹的问题,在centos上用yum安装编译环境,运行: 

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

结果导致编译cocos2d-x出现错误:

cc1plus: error: unrecognized command line option "-std=c++11"

我google了一番,确定这个错误是由于gcc的版本过低造成的

查看gcc版本:

gcc --version

系统显示:

gcc (GCC) 4.8.2

我又google一番,确定这个版本可以支持c++11

但是cocos2d-x的编译错误确实是运行了yum命令以后才出现的

我全局搜了一下gcc:

find / -name gcc

有这么多gcc:

/usr/lib/gcc
/usr/local/lib/gcc
/usr/local/bin/gcc
/usr/local/libexec/gcc
/usr/bin/gcc


再运行:

/usr/bin/gcc --version

gcc (GCC) 4.4.7-4


/usr/local/bin/gcc --version

gcc (GCC) 4.8.2


看来,这个机器上确实有两个gcc,shell跑的是/usr/local/bin/gcc,但是cocos2dx make时用的是/usr/bin/gcc(为什么路径会不一致,原因还不清楚)

解决的办法是,运行;

mv /usr/bin/gcc /usr/bin/gcc4.4.7

ln -s /usr/local/bin/gcc /usr/bin/gcc


另外,g++, cc, c++这几个命令也要改

mv /usr/bin/g++ /usr/bin/g++4.4.7

ln -s /usr/local/bin/g++ /usr/bin/g++


mv /usr/bin/cc /usr/bin/cc4.4.7

ln -s /usr/local/bin/cc /usr/bin/cc


mv /usr/bin/c++ /usr/bin/c++4.4.7

ln -s /usr/local/bin/c++ /usr/bin/c++


[CentOS]如何解决gcc版本冲突?

find / -name gcc 有这么多gcc: /usr/lib/gcc /usr/local/lib/gcc /usr/local/bin/gcc /usr/local/lib...
  • chuanyu
  • chuanyu
  • 2015年04月22日 14:09
  • 1900

LInux中安装gcc-c++时报错和原有gcc版本冲突

Centos 6.3 安装 gcc-c++时报下面的错误: Resolving Dependencies --> Running transaction check ---> Package g...

centos升级gcc到4.8.2(cc1plus: 错误:无法识别的命令行选项“-std=c++11”)

本文使用操作系统:Centos 6.4 Desktop,64bit;   原GCC版本:4.4.7;   目标:升级GCC到4.8.2,以支持C++11。 获取GCC 4.8.2包:wget ...
  • chuanyu
  • chuanyu
  • 2015年04月22日 11:43
  • 9858

unrecognized command line option “-std=c++11” 无法识别的命令行选项“-std=c++11” 的解决办法

更新gcc到4.8.2之后,编译使用c++11仍出现此情况的解决办法: (更新gcc版本请另一篇文章:http://blog.163.com/wu_thousand/blog/static/1186...
  • lhh1113
  • lhh1113
  • 2017年03月21日 14:58
  • 4002

错误:unrecognized command line option “-std=c++11”

From: http://my.oschina.net/chenyoca/blog/226455   摘要 出现这个编译错误的原因在g++ gcc 版本不够高。 目录[-] ...

C++11异常处理 noexcept

1.简介在C语言中,当程序的运行出现异常、错误时,如果我们想为这些异常、错误提供解决方案时,我们面临许多问题,如: (1)C语言没有提供统一(标准)的方式来处理错误; (2)无法保证错误会被正确的...
  • zkreats
  • zkreats
  • 2016年01月20日 20:36
  • 4307

g++编译时默认支持C++11的几个配置小方法

//第一种,直接包含在源程序文件中,如第一行代码所示 #pragma GCC diagnostic error "-std=c++11" #include using namespace std;...

动态库的gcc版本不一致造成的编译问题的解决办法

在Linux上使用更高的gcc/g++版本编译生成的动态库来链接应用程序时,会出现“/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.14' not foun...

svn版本冲突解决

  • 2015年02月06日 10:18
  • 282KB
  • 下载

SVN版本冲突解决详解

  • 2017年07月30日 08:14
  • 274KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何解决gcc版本冲突?
举报原因:
原因补充:

(最多只允许输入30个字)