关闭

如何解决gcc版本冲突?

261人阅读 评论(0) 收藏 举报
分类:

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++


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:128408次
    • 积分:2500
    • 等级:
    • 排名:第14864名
    • 原创:70篇
    • 转载:385篇
    • 译文:0篇
    • 评论:7条
    文章分类
    最新评论