centos安装升级gcc

转载请注明出处如果您觉得文章有用,就赏我个鸡腿吧!

安装gcc或者升级gcc前提是必须已经有gcc,玄妙吧^ - ^

安装前准备工作

  1. 创建通用安装目录
mkdir -p /home/xyg/install  #创建安装脚本通用目录
cd /home/xyg/install

以下2步全新安装时才有必要!

  • 查看gcc是否已安装,出现 -bash: gcc: command not find 表示未安装gcc
gcc -v
  • yum安装gcc
dnf -y install gcc gcc-c++
  1. 安装依赖,不安装会在编译gcc时报错哦( tar (child): lbzip2:无法 exec: 没有那个文件或目录 )
yum -y install bzip2

创建安装脚本

vim /home/xyg/install/install-nginx.sh #新建并编辑nginx安装脚本

将以下内容复制进文件,保存退出

#! /bin/bash
# 下载地址 http://ftp.gnu.org/gnu/gcc/

mkdir -p /home/xyg/gcc
cd /home/xyg

wget http://ftp.gnu.org/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.xz

tar -xvJf gcc-9.3.0.tar.xz -C gcc --strip-components=1

cd gcc

root=`pwd`

echo '开始下载依赖包'
$root/contrib/download_prerequisites  ##下载gcc依赖包
echo '结束下载依赖包'

$root/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

corenum=`cat /proc/cpuinfo | grep "core id" | wc -l`
realnum=`expr $corenum \* 2`

make -j$realnum

make install

安装

bash install-gcc.sh

查看安装是否成功

gcc -v  #如果版本已经是9.3.0,那就说明安装或者升级成功了

扩展知识

make -j参数

-j参数是为了充分利用计算机cpu资源,加快编译速度,其值一般是当前cpu核数的2倍为宜
所以才有安装脚本中的

corenum=`cat /proc/cpuinfo | grep "core id" | wc -l` #查看当前环境核心数量
realnum=`expr $corenum \* 2`

不过需要注意,项目的Makefile要规范,正确设置好依赖关系,并行编译才能取得最佳的效果。

其他一些加速编译的工具

ccache 缓存编译结果,加速编译速度
distcc 多台计算机同时编译,加速编译速度

一些旧版本的linux如,centos6

升级还要运行如下命令

update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-pc-linux-gnu-gcc 40
#添加新GCC到可选项,倒数第三个是名字,倒数第二个参数为新GCC路径,最后一个参数40为优先级,设大一些之后就自动使用新版了

端口ssh,重新打开ssh,gcc -v就可以查看到升级成功了

gcc为什么要升级

比如:php编译时,GCC 4.8以上PHP才会开启Global Register for opline and execute_data支持, 这个会带来5%左右的性能提升。

其他的好处欢迎大家补充。

发布了5 篇原创文章 · 获赞 0 · 访问量 77

猜你喜欢

转载自blog.csdn.net/made4971/article/details/105690205