ubuntu16.04多个版本gcc编译器的安装和切换

小淼博客 小淼博客     2022-09-18     754

关键词:

这几天在配置交叉编译ARM开发板的linux内核的过程中碰到了很多问题,其中包括了GCC版本太高等问题,由此我打算安装其他老的版本给我的Ubuntu16.04.实验过程如下:

官网的教程是最牛逼的,先看看官网的安装教程吧:https://gcc.gnu.org/install/

1、首先查看一下当前我的Ubuntu16.04版本的原装GCC版本:

gcc -v #查看gcc的版本
g++ -v #查看g++的版本

  

如上图所示:GCC的版本是5.4.0(这对我编译某些很早的内核文件的确是太新了)

2、安装目前需要GCC和G++的版本(目前安装的是gcc-4.8.5版本):

在这之前,我尝试采用下载源文件编译安装的方法,碰到了太多的问题,先记录于此,后面再解决吧,先使用apt-get的安装方法:

sudo apt-get install gcc-4.8 g++-4.8

我已经安装好了,显示如图。

你在安装完之后可以采用下面的指令来查看当前系统中安装的所有的gcc和g++的版本:

ls /usr/bin/gcc*
ls /usr/bin/g++*

3、将某个版本加入gcc候选中,最后的数字是优先级,我自己是直接设为100(测试没有问题),指令如下:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100

同样的我们也将原来系统中的gcc和g++的优先级改成100,这样我们就能在选择完当前使用版本之后不会恢复默认优先级的版本。

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 100

4、完成上面的操作之后,我们就可以通过下面的指令来选择不同的gcc和g++的版本了,(注意使用之前确保至少有两个gcc或者g++的版本进行了第3步的操作):

sudo update-alternatives --config gcc

这里我们选择了2,也就是gcc-4.8的版本,接下来查看当前的版本是否已经切换过来了。

gcc -v

这样表示确实切换过来了。

我们可以使用同样的方法来选择g++:

OK,我们都切换过来了,cheers!。

注意一个问题:

  当切换使用了其他版本的gcc时,请务必保持g++的版本和gcc版本的一致性,否则用cmake配置出来的项目遇到c++代码还是会用之前版本的gcc。

关于直接编译安装gcc的教程可以参看这里(虽然我还没成功):http://blog.csdn.net/ws_20100/article/details/51207372

关于上面的gcc的切换和安装也可以参考这里:http://www.linuxidc.com/Linux/2017-03/142299.htm

后续问题解决:

由于不能很好的使用source源文件来安装gcc,那我们就想办法安装:采用.deb文件来安装

1、先下载rpm的安装文件。

wget http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_64/RPMS.classic//gcc3.4-3.4.5-alt17.x86_64.rpm

2、将rpm文件转换成ubuntu能够识别的deb文件。

下载转换安装文件的软件alien:

sudo apt-get install alien

3、转换rpm到deb文件(在同一目录下生成了deb文件)。

sudo alien gcc3.4-3.4.5-alt17.x86_64.rpm

 

4、使用指令安装deb软件包。

sudo dpkg -i gcc3.4_3.4.5-1_amd64.deb 

5、查看当前所有的gcc版本。

ls /usr/bin/gcc*

最后安装好了们就用之前的命令来设置gcc的优先级,并切换不同的gcc的版本啦~

参考reference:

gcc专用rpm文件下载地址:https://pkgs.org/

rpm转deb文件:http://blog.csdn.net/cd520yy/article/details/10475843

ubuntu 安装gcc-3.4.6:http://aizhu.2008beijing.blog.163.com/blog/static/5845702120121194563260/

                                                                                           完~

ubuntu16.04多版本gcc,g++切换(代码片段)

ubuntu16.04默认gcc,g++版本为5.4.0,但是实际使用时,可能需要更高版本支持,这里以gcc/g++7为例;//更新sudoadd-apt-repositoryppa:ubuntu-toolchain-r/testsudoapt-getupdate//安装gcc/g+ 查看详情

ubuntu16.04多版本gcc,g++切换(代码片段)

ubuntu16.04默认gcc,g++版本为5.4.0,但是实际使用时,可能需要更高版本支持,这里以gcc/g++7为例;//更新sudoadd-apt-repositoryppa:ubuntu-toolchain-r/testsudoapt-getupdate//安装gcc/g+ 查看详情

如何安装gcc开发环境

...ARTICULARPURPOSE.参考技术A在CentOS7和RHEL7系统上如何安装GnuGCC编译器和相关的工具比如:autoconf,automake,fl 查看详情

ubuntu怎么安装gcc编译器

...包名称如:cpp-3.4-GNUC预处理器cpp-4.2-GNUC预处理器gcc-3.4-GNUC编译器gcc-3.4-base-GNU编译器套装(基本包)gcc-4.2-GNUC编译器gcc-4.2-base-GNU编译器套装(基本包)gcc-4.2-multilib-TheGNUCcompiler(multilibfiles)gdc-4.2-TheDcompilercpp-4.1-GNUC预处理器cpp-4.3-GNUC预处... 查看详情

高版本ubuntu(如22.02)修改apt源,快速安装低版本gcc/g++

...版本,高版本Ubuntu无法直接通过aptinstallgcc安装低版本编译器,可以通过离线安装(过于繁琐),本文推荐修改apt源,添加对应低版本ubuntu源即可,这里以Ubuntu22.04为例,给出安装gcc-5/gcc-7的简单方法... 查看详情

ubuntu16.04无法安装cuda吗

你好, 先在更新管理器中装好驱动。然后sudoapt-getinstallnvidia-cuda-toolkit  默认安装cuda7.5.1,但是安装之后,没有/usr/local/cuda*这个文件夹,也没有sample  结果发现gpu无法点亮,【修改】gcc版本太新了,cuda只支持gcc5.0以下,需... 查看详情

ubuntu下更换gcc版本(代码片段)

...现是gcc/g++版本不对,所以这里记录一下如何在ubuntu下安装多个gcc/g++版本方法一:apt源安装//更新包列表sudoaptupdate //安装build-essential软件包集合//会安装一系列软件,其中就包括gcc、G+& 查看详情

ubuntu下更换gcc版本(代码片段)

...现是gcc/g++版本不对,所以这里记录一下如何在ubuntu下安装多个gcc/g++版本方法一:apt源安装//更新包列表sudoaptupdate //安装build-essential软件包集合//会安装一系列软件,其中就包括gcc、G+& 查看详情

如何在linux中安装gcc编译器?

如何在linux中安装gcc编译器?2004年4月20日最新版本的GCC编译器3.4.0发布了。目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。GCC3.4.0比以前版本更好地支持了C++标准。本文以在Redhat... 查看详情

gcc在ubuntu上安装和使用(代码片段)

...装一堆新包,包括gcc,g++和make。要验证GCC编译器是否已成功安装,可以使用gcc-v命令打印GCC版本:使用gcc命令格式如下:gcc[选项][文件名字]主要选项如下:-c:只编译 查看详情

ubuntu16.04多版本gcc,g++切换(代码片段)

ubuntu16.04默认gcc,g++版本为5.4.0,但是实际使用时,可能需要更高版本支持,这里以gcc/g++7为例;//更新sudoadd-apt-repositoryppa:ubuntu-toolchain-r/testsudoapt-getupdate//安装gcc/g++7sudoapt-getinstallgcc-7sudoapt-geti... 查看详情

ubuntu下更换gcc版本(代码片段)

...现是gcc/g++版本不对,所以这里记录一下如何在ubuntu下安装多个gcc/g++版本方法一:apt源安装//更新包列表sudoaptupdate //安装build-essential软件包集合//会安装一系列软件,其中就包括gcc、G++和make等。sudoap... 查看详情

ubuntu下更换gcc版本(代码片段)

...现是gcc/g++版本不对,所以这里记录一下如何在ubuntu下安装多个gcc/g++版本方法一:apt源安装//更新包列表sudoaptupdate //安装build-essential软件包集合//会安装一系列软件,其中就包括gcc、G++和make等。sudoap... 查看详情

如何在ubuntu16.04创建12.04gcc编译环境

gcc只是个编译器,不是编辑器,不能编辑程序ubuntu下可以用vim或者gedit编辑程序,再用gcc编译。gcc不是VC!!你在gedit里编一个C程序,保存为test.c再用gcc编译:gcc-otesttest.c最后运行可执行文件:./test参考技术Agcc只是个编译器,不是... 查看详情

ubuntu16.04系统gcc下降和升级(代码片段)

gcc下降1安装sudoapt-getinstall-ygcc-4.7sudoapt-getinstall-yg++-4.72重新建立软连接cd/usr/bin#进入/usr/bin文件夹下sudorm-rgcc#移除之前的软连接sudoln-sfgcc-4.7gcc#建立gcc4.7的软连接sudorm-rg++#同gccsudoln-sfg++-4.7g++这样,gcc下降就做好了可以通过gc 查看详情

开发环境ubuntu中使用vscode开发c/c++②(安装gcc编译器)(代码片段)

文章目录一、安装GCC编译器可以参考官方提供的文档:https://code.visualstudio.com/docs/cpp/config-linux一、安装GCC编译器在Ubuntu命令行中,执行gcc-v命令,查询当前的gcc编译器版本,如果当前gcc编译器已经安装,则不需要处理,如果gcc没有安装,则... 查看详情

编译安装gcc

 不过使用yum安装的gcc并非当前的最新版本,目前gcc的最新版本为4.9.0(gcc4.8开始全面支持C11和C++11的新特性)。如果我们想要安装最新版本的gcc,那么就需要自行安装gcc。笔者初次安装gcc时,在网络上搜寻了大量的gcc安装配置教... 查看详情

gcc的替换,很有用

摘要:Ubuntu系统使用的gcc版本随着发布版本的不同而不同,在编译android系统时不同的版本推荐用不同的gcc去编译,那么可不可以改变系统的gcc来适应android编译环境的需求呢?答案是可以的。Ubuntu系统使用的gcc版本随着发布版本的... 查看详情