CentOS 6.6 升级GCC G++ (当前最新GCC/G++版本为v6.1.0)
或者 添加yum 的 repo 文件 也不行, 只能更新到 4.4.7!
采取手动编译安装了
1、 获取安装包并解压
wget http://ftp.gnu.org/gnu/gcc/gcc-6.1.0/gcc-6.1.0.tar.bz2
tar -jxvf gcc-6.1.0.tar.bz2
当然,http://ftp.gnu.org/gnu/gcc 里面有所有的gcc版本供下载,最新版本已经有6.1.0啦.
建议下载.bz2的压缩包,文件更小,下载时间更少.
2、 下载供编译需求的依赖项
参考文献[1]中说:这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。
cd gcc-6.1.0
./contrib/download_prerequisites
3、 建立一个目录供编译出的文件存放
mkdir gcc-build-6.1.0
cd gcc-build-6.1.0
4、 生成Makefile文件
../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
5、 编译
make -j4
-j4选项是make对多核处理器的优化,如果不成功请使用 make,相关优化选项可以移步至参考文献[2]。
(注意:此步骤非常耗时,我虚拟机耗时近3小时; 实体机近80分钟,CPU基本是满的,内存也使用不少)
6、 安装
make install
(安装需要root权限!)
查看安装
ls /usr/local/bin | grep gcc
7、 重启,然后查看gcc版本
gcc -v
8、 写个C++11 特性的程序段 测试
g++ -std=c++11 test.cpp
9、升级gcc,生成的动态库没有替换老版本gcc的动态库
源码编译升级安装了gcc后,编译程序或运行其它程序时,有时会出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found的问题。这是因为升级gcc时,生成的动态库没有替换老版本gcc的动态库导致的,将gcc最新版本的动态库替换系统中老版本的动态库即可解决。
9.2 执行以下命令,查找编译gcc时生成的最新动态库:
find / -name "libstdc++.so*"
10、执行 删除旧的链接
rm -rf /usr/lib/libstdc++.so.6
11、重新加入链接
ln -s /usr/local/lib/libstdc++.so.6.0.22 /usr/lib/libstdc++.so.6
12、重新编译运行。
相关知识
升级 gcc g++ 版本 支持
宠物产品宠物箱美国GCC认证
出口宠物用品种类大全,及美国GCC认证办理疑问解答
《贪婪洞窟》全新宠物版本上线!绝版纪念宠物皮肤献给一路支持我们的各位~
执御发布2019平台卖家出海计划,平台启动三大战略升级
老伙计训犬课程2.0升级版本全新启航!!!
石器时代的版本发展史
2024年CKU赛事相关规则调整
猫咪社区最新版本下载
512版本攻略
网址: 升级 gcc g++ 版本 支持 https://m.mcbbbk.com/newsview182088.html
上一篇: “宠物经济”为何会爆火?很多人被 |
下一篇: 宠物钱包防丢器厂家 |