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

今天碰到一个比较坑爹的问题,在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版本冲突?

时间: 2024-10-15 22:53:00

[CentOS]如何解决gcc版本冲突?的相关文章

[CentOS]怎样解决gcc版本号冲突?

今天碰到一个比較坑爹的问题.在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 --

CentOS 7升级gcc版本

Centos 7默认gcc版本为4.8,有时需要更高版本的,这里以升级至8.3.1版本为例,分别执行下面三条命令即可,无需手动下载源码编译 1.安装centos-release-scl sudo yum install centos-release-scl 2.安装devtoolset,注意,如果想安装7.*版本的,就改成devtoolset-7-gcc*,以此类推 sudo yum install devtoolset-8-gcc* 3.激活对应的devtoolset,所以你可以一次安装多个版

AS 解决support-annotations版本冲突

一.问题来源 $ ./gradlew makeJar FAILURE: Build failed with an exception. * What went wrong: Could not determine the dependencies of task ':wySdk:lint'. > Could not resolve all artifacts for configuration ':wySdk:debugAndroidTestRuntimeClasspath'. > Could

Centos下更新 gcc 版本至 GCC 6.1.0

最近linux的gcc版本更新到gcc 6.1.0 版本了,我查看了一下我的机器上的GCC版本.... ------------- GCC 4.4.7    我去,这也太low了吧,而且我们知道的GCC 4.4.7 是不支持 C++11 的,我的脾气比较暴躁,果断要升级到GCC 6.1.0 版本! 我开始的时候使用了 yum update gcc 命令,可恨的是机器又将gcc 4.4.7 版本重新给我装了一遍,你说可恨不可恨,于是我找到了 gcc 的资源了,如下: URL:  http://ft

CentOS 下面解决libvirt版本过低、升级冲突问题

最近在搞Qemu+Spice的桌面虚拟化方案. 之前一直在公司服务器上面编译.测试spice.今天想搭一个自己的服务器. qemu和spice,以及他们依赖的库都安装好了,可是用libvirt始终都启动不了虚拟机,后来发现yum上面的libvirt版本特别低,才0.10.2,我的天哪,怪不得各种设备类型都不支持. 于是就去官方下载1.2.4的libvirt,卸载了系统里面的libvirt.x86_64,可是还是一堆报错. 后面发现,需要手动卸载libvirt-client.x86_64,然后再安

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

Centos 6.7 安装 gcc-c++时报下面的错误: Resolving Dependencies --> Running transaction check ---> Package gcc-c++.i686 0:4.4.7-11.el6 will be installed --> Processing Dependency: libstdc++-devel = 4.4.7-11.el6 for package: gcc-c++-4.4.7-11.el6.i686 -->

如何解决jquery版本冲突

<!-- 引入1.6.4版的jq --> <script src="<a href="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.js"></script>" target="_blank">http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.js">&

gcc boost版本冲突解决日记

问题背景 项目在Ubuntu10 64位 boost 1.55,boost采用的是项目内包含相对目录的形式部署 项目采用了 -Wall -Wextra -Werror -Wconversion 最高的告警选项 单独测试是可以的 由于项目中包含的内容很多,头文件超多,因此只能选取1个简单的分支进行测试,可以再现问题,通过各种猜测和测试,最终定位到: 有GCC push_option对boost/thread进行处理后,stl容器使用完全异常[如 map<int,string>空内容时begin(

Maven依赖版本冲突的分析及解决小结

1:前言 做软件开发这几年遇到了许多的问题,也总结了一些问题的解决之道,之后慢慢的再遇到的都是一些重复性的问题了,当然,还有一些自己没有完全弄明白的问题.如果做的事情是重复的,遇到重复性问题的概率也就会比较多了,如果是在一个新的领域里玩,遇到的问题又都是新的,自己从来没有见过的,但是问题的解决思路基本是类似的.下面这个问题,我觉得值得一记,因为以后还会再遇到类似的,我希望自己能很快的将其解决掉. 2:报错信息 如下是更新项目后,启动项目时抛出的部分错误信息. 十二月 14, 2016 7:52: