gcc7.5.0为Ubuntu18.04默认版本,默认已经安装好。
未安装好请先自行参照其他教程将基本环境配置好再进行下述安装步骤
下面为安装gcc11.2步骤
采用源码安装方式
步骤一:下载源码包
gcc-11.2.0.tar.gz下载链接1 该链接不加速下载比较慢,可自行搜索国内镜像源下载。
gcc-11.2.0.tar.gz下载链接2
解压
tar xvf gcc-11.1.0.tar.gz
步骤二:安装依赖库
cd gcc-11.2.0
./contrib/download_prerequisites #等候安装完,机器配置比较差等候时间会比较长
步骤三:编译gcc11.2源码
mkdir build
cd build
#配置编译选项,可根据需求增删
../configure configure -v \
--build=x86_64-linux-gnu \
--host=x86_64-linux-gnu \
--target=x86_64-linux-gnu \
--prefix=/usr/local/gcc-11.2 \
--enable-checking=release \
--enable-languages=c,c++ \
--disable-multilib \
--program-suffix=-11.2\
#编译
make -j8 #j后面的数字根据自己CPU数来设置,CPU启用的越多编译越快
# 安装
sudo make install
步骤四:GCC版本切换配置
#配置多版本链接
#sudo update-alternatives --install
#</usr/bin/gcc链接路径>
#<gcc编译器名>
#</usr/local/gcc-11.2/bin/x86_64-linux-gnu-gcc-11.2所安装编译器版本所在路径>
#<优先级90>
sudo update-alternatives --install \
/usr/bin/gcc \
gcc \
/usr/bin/x86_64-linux-gnu-gcc-7 \
100 \
--slave /usr/bin/g++ g++ /usr/bin/x86_64-linux-gnu-g++-7
sudo update-alternatives --install \
/usr/bin/gcc \
gcc \
/usr/local/gcc-11.2/bin/x86_64-linux-gnu-gcc-11.2 \
90 \
--slave /usr/bin/g++ g++ /usr/local/gcc-11.2/bin/x86_64-linux-gnu-g++-11.2
#切换版本命令
sudo update-alternatives --config gcc
#注意:若配置多版本失败。按如下操作,然后再重复上面的配置多版本操作
joseph@VirBox:~/test$ ls -al /usr/bin/gcc
lrwxrwxrwx 1 root root 21 Dec 14 09:53 /usr/bin/gcc -> /etc/alternatives/gcc
joseph@VirBox:~/test$ rm /etc/alternatives/gcc
joseph@VirBox:~/test$ sudo apt-get remove gcc
joseph@VirBox:~/test$ sudo apt-get install gcc
joseph@VirBox:~/test$ sudo apt-get remove g++
joseph@VirBox:~/test$ sudo apt-get install g++
可选项
# 检查版本
/usr/local/gcc-11.2/bin/gcc-11.2 --version
# 配置可执行文件路径
export PATH=/usr/local/gcc-11.2.0/bin:$PATH
# 配置链接库路径
export LD_LIBRARY_PATH=/usr/local/gcc-11.2.0/lib64:$LD_LIBRARY_PATH
# 配合CMake 使用的环境变量
export CC=/usr/local/gcc-11.2.0/bin/gcc-11.2
export CXX=/usr/local/gcc-11.2.0/bin/g++-11.2
#升级GDB
wget http://ftp.gnu.org/gnu/gdb/gdb-10.2.tar.gz
tar -zxf gdb-10.2.tar.gz
cd gdb-10.2
./configure
make -j8
sudo make install
# 使用apt安装的在/usr/bin下
# 这个默认安装时在/usr/local/bin/下