精华内容
下载资源
问答
  • 编译器版本有时太高,好多软件是运行会报错,所以最好安装多个版本gcc编译器,用的时候来回进行切换 yum -y install gcc yum -y install gcc-c++ 这是安装gcc命令。 发现现有项目不兼容高版本,故需要切换...

    编译器版本有时太高,好多软件是运行会报错,所以最好安装多个版本的gcc编译器,用的时候来回进行切换

    yum -y install gcc  
    
    yum -y install gcc-c++ 
    

    这是安装gcc命令。

    发现现有项目不兼容高版本,故需要切换为低版本。

    find /usr -name gcc

    可以搜索机器中安装的所有版本的gcc编译器版本。

    结果是有这么多的

    下面需要去查看gcc的版本是多少,例如

    /usr/local/bin/gcc --version
    
    gcc (GCC) 6.1.0
    
    /usr/bin/gcc --version
    
    gcc (GCC) 4.4.7

    然后看一下目前版本的编译器在哪个目录下运行

    which gcc

    对gcc,g++,c++全部加入链接即可。

    展开全文
  • 不同版本gcc切换

    千次阅读 2017-03-01 15:59:18
    1. 查看已安装gcc版本 : ls /usr/bin/gcc* 2. 安装要装的版本,例如 sudo apt-get install gcc-4.8 gcc-4.8-multilib g++-4.8 g++-4.8-multilib 3. 配置 sudo update-alternatives --install /usr/bin/gcc gcc /usr...

    1.  查看已安装gcc版本 :

    ls /usr/bin/gcc*
    2.  安装要装的版本,例如
    sudo apt-get install gcc-4.8 gcc-4.8-multilib g++-4.8 g++-4.8-multilib
    3. 配置
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8
    就可将gcc/g++的默认版本设为4.8。 update-alternatives是一个管理工具,能够管理同一个软件的不同版本。上命令中,参数slave保证gcc和g++版本的联动调整。

    而60是表示的优先级,你可以选用任何你喜欢的大于0的整数。那么,此时你再利用gcc命令查看当前的版本,就会发现已经是新版本了。

    4. 版本切换,4.6为之前版本

    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 50 --slave /usr/bin/g++ g++ /usr/bin/g++-4.6

    上面的优先级设为50,所有当前默认为4.9版本。

    5. 查看,使用命令

    sudo update-alternatives --query gcc

    来查看被update-alternatives管理的gcc不同版本,这同样可以针对g++。

    6. 不同版本之间切换

    sudo update-alternatives --config gcc

    7. 删除可选项

    sudo update-alternatives --remove gcc /usr/bin/gcc-4.8
    参考: http://fpcfjf.blog.163.com/blog/static/5546979320131124196197/

    http://blog.csdn.net/robertchenguangzhi/article/details/47837445

    展开全文
  • 注:不存在gcc降级, 那样会...由于gcc在5.x版本修改了ABI,导致新版本gcc编译的二进制文件放在老的环境下会报错,所以需要安装gcc4.8.5。4.8.5这个版本支持c++11。 首先尝试下载gcc-4.8.5的源码编译安装,结果mak...

    转自: https://www.linuxidc.com/Linux/2017-03/142299.htm

    注:不存在gcc降级, 那样会毁坏系统。实际是安装多版本,然后指定需要的版本。

    由于gcc在5.x版本修改了ABI,导致新版本gcc编译的二进制文件放在老的环境下会报错,所以需要安装gcc4.8.5。4.8.5这个版本支持c++11。

    首先尝试下载gcc-4.8.5的源码编译安装,结果make时报错“libstdc++.so.6: : version `CXXABI_1.3.8’ not found”。查了一下,不能用新版gcc来编译老版的gcc源码。

    其实,在Ubuntu 16.04上安装老版gcc十分简单,直接用apt-get命令下载即可。

    第一步:

    sudo apt-get install gcc-4.8
    

    输入密码,同意安装,接下来就自动下载安装4.8.5版本了。

    第二步:设置默认的gcc版本

    gcc --version
    

    (可选)查看当前版本,不出意外的话会返回Ubuntu 16.04自带的5.4.0这个版本号,现在使用gcc命令编译时还是会用新版本。

    ls /usr/bin/gcc*
    

    (可选)查看已有的gcc版本,确认一下刚才4.8.5有没有装成功。

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

    将某个版本加入gcc候选中,最后的数字是优先级,我自己是直接设为100,没任何问题。

    接着输入:

    sudo update-alternatives --config gcc
    

    如果用过此方法配置过多个gcc版本,会看到如下选项:(注:复制于参考文献【1】,这里只是做个说明示范,实际装4.8时不会如下显示)

    选择                  路径            优先级        状态
    * 0            /usr/bin/gcc-4.4  50        自动模式
      1            /usr/bin/gcc-4.4  50        手动模式
      2            /usr/bin/gcc-4.5  40        手动模式
      3            /usr/bin/gcc-4.6  30        手动模式
    

    大多数情况是没有这么配置过,所以不会给选项,命令行会返回“仅有一个可用的gcc版本”(大意)。此时在运行gcc --version查看版本,发现4.8.5已经为默认的gcc版本。

    然后再按同样方法装上g++,如果只装gcc的话,用cmake配置出来的项目遇到c++代码还是会用之前版本的gcc

    大功告成。

    展开全文
  • Linux下,有时经常需要使用不同版本gcc进行测试,尤其是有些大型程序,例如,如果第一次编译版本是gcc5.0,修改了其中一个文件,如果编译器改为gcc6.0,则运行时会出一些奇怪错误,甚至无法debug。我曾经遇到,类似...

    Linux下,有时经常需要使用不同版本gcc进行测试,尤其是有些大型程序,例如,如果第一次编译版本是gcc5.0,修改了其中一个文件,如果编译器改为gcc6.0,则运行时会出一些奇怪错误,甚至无法debug。我曾经遇到,类似一个问题,编译时不报错,运行时把其中一个int型数据0,当成了指针地址,报错segment fault,访问0地址错误。

    为了实现单独用户使用特定编译器版本,可以利用Linux下环境变量初始化顺序的方式:

    0. 查看当前gcc版本:

    $ gcc -v

    Using built-in specs.
    COLLECT_GCC=gcc
    COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
    Target: x86_64-linux-gnu
    Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.5' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
    Thread model: posix
    gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5) 

    1. 安装一个特定版本的gcc,但是不要做默认gcc的修改,比如在ubuntu下,用命令行安装gcc:

     

    sudo add-apt-repository ppa:ubuntu-toolchain-r/test

     sudo apt-get update

    sudo apt-get install gcc-6

    2. 在自己的home目录下,建立一个目录bin,然后做好软链接:

    $ mkdir bin

    $ ln -s /path/to/new/install/gcc  ./bin/gcc

    ln -s /path/to/new/install/g++  ./bin/g++

    查看是否软链接成功:

    haha@test:~$ ls ./bin -l
    total 0
    lrwxrwxrwx 1 test  16 Jan 10 16:24 g++ -> /usr/bin/g++-4.8
    lrwxrwxrwx 1 test  16 Jan 10 16:24 gcc -> /usr/bin/gcc-4.8

    3. 修改自己home目录下的.bashrc,添加以下内容:

    export PATH=$PATH:~/bin   #to use local gcc 4.8 not global gcc5.5  

    这一步目的是把新的编译器连接放到PATH环境变量里,如果你试了还是不行,说明你的系统可能是centos,需要改成如下:

    export PATH=~/bin:$PATH

    4. 执行以下命令让修改生效:

    $ source ~/.bashrc

    5. 测试是否生效:

    $ gcc -v

    Using built-in specs.
    COLLECT_GCC=gcc
    COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper
    Target: x86_64-linux-gnu
    Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.5-4ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
    Thread model: posix
    gcc version 4.8.5 (Ubuntu 4.8.5-4ubuntu2)

     

    6.当需要取消使用自己定义的gcc版本时,直接重命名当前目录下的bin,然后执行source ~/.bashrc即可。

    展开全文
  • 首先检查自己电脑有那些版本gcc/g++ ls /usr/bin/gcc* ls /usr/bin/g++* 安装各种版本gcc/g++ sudo apt-get install gcc- sudo apt-get install g++- 命令最后自行替换成自己想要的版本 管理各种版本gcc/...
  • 在ubuntu环境下,有时候会遇到安装配置不同依赖包,而需要用到不同版本gcc或g++的情况。比如ubuntu18.04中自带的gcc-7、g++-7,但是最新的caffe2要用gcc-6编译才能通过。通过本文方法可以很方便的随意切换各个版本。...
  • 安装不同版本GCC

    千次阅读 2009-10-30 10:53:00
    在Fedora 8时,重装编译grub-0.97时,总是出现如下错误:configure: error: GRUB ... upgrade your binutilsgoogle 了一下,原来是gcc版本不兼容,他要求的版本是3.4,而我的机器是4.1的,只好下载源码重新安装。 
  • 这里写自定义目录标题安装不同版本GCCGCC5GCC7GCC9GCC9切换当前的默认GCC版本 安装不同版本GCC 我们在不同的环境下需要使用不同的GCC版本,同时还要保证不同版本GCC共存。 GCC5 sudo add-apt-repository ppa:...
  • linux下gcc、g++不同版本的安装和切换

    千次阅读 2020-02-12 15:12:18
    Ubuntu 18.04预装GCC版本为7.3,但有时在编译是需要用的不同gcc版本,下面介绍,如何安装不同的gcc 和g++,并设置根据不同的需要在不同版本之间切换。 1. 可以通过如下命令查看当前安装的版本: ll /usr/bin/gcc* 2....
  • Ubuntu下不同用户gcc版本的切换方法

    千次阅读 2018-11-02 17:48:39
    在ubuntu上安装MatConvNet,配置环境要求gcc 4.9.*,而系统的gcc是5.4的,所以要修改gcc版本,但是服务器上有...Linux下不同用户使用不同版本gcc的方法 https://blog.csdn.net/qianlong4526888/article/details/79...
  • ubuntu系统中gcc不同版本共存以及切换: 一、不同版本安装 1、安装gcc sudo apt install gcc-9 gcc-9-multilib g++-9 g++-9-multilib 2、为gcc不同版本设置优先级 sudo update-alternatives --install /usr/bin/gcc...
  • CentOS7安装指定版本gcc

    2021-05-21 11:39:19
    一、使用yum安装默认gcc 因为编译安装gcc,是需要用gcc编译的,所以首先需要安装默认gcc yum install gcc yum install gcc-c++ 如果没有yum源,可以先配置阿里源 cd /etc/yum.repo.d/ mv CentOS-Base.repo CentOS-...
  • 安装两个版本gcc

    千次阅读 2018-06-18 21:18:45
    转载:https://my.oschina.net/u/2306127/blog/538139 摘要: Ubuntu系统使用的gcc版本随着发布版本不同不同,在编译android系统时不同版本推荐用不同gcc去编译,那么可不可以改变系统的gcc来适应android...
  • 2、apt-get install -y gcc-7 g++-7 update-alternatives /usr/bin/gcc-5 50 --slave update-alternatives /usr/bin/gcc-7 70 --slave add-apt-repository ppa:ubuntu-toolchain-r/test gcc -v update-...
  • Ubuntu18.04多个版本GCC编译器的切换

    万次阅读 热门讨论 2018-07-24 10:51:00
    Ubuntu18.04自带了两个版本GCC,分别为6.4.0 和 7.3.0 gcc 在 /usr/bin 目录下 1、通过下面两条指令来查看: ls /usr/bin/gcc* ls /usr/bin/g++* 2、将某个版本加入gcc候选中,最后的数字是优先级,我自己...
  • Linux环境下的gcc版本太低,有些需要编译的代码在低版本gcc(一般<4.9)下无法编译成功,报错 e.g. 有可能会报segmentation fault core dumped 这类错误。 此时不要想着搜segmentaiton fault core dumped 的角度...
  • gcc版本共存和版本切换

    千次阅读 2018-04-26 14:33:40
    摘要: Ubuntu系统使用的gcc版本随着发布版本不同不同,在编译android系统时不同版本推荐用不同gcc去编译,那么可不可以改变系统的gcc来适应android编译环境的需求呢?答案是可以的。Ubuntu系统使用的gcc版本...
  • sudo add-apt-repository ppa:ubuntu-toolchain-r/test -ysudo apt-get update -ysudo apt-get install gcc-7 g++-7 -ysudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50sudo update-...
  • sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update #如果提示未安装,还需要先安装它的包: sudo apt-get install ...sudo apt-get install gcc-5 g++-5 cd /usr/bin sudo rm gc...
  • 这几天在配置交叉编译ARM开发板的linux内核的过程中碰到了很多问题,其中包括了GCC版本太高等问题,由此我打算安装其他老的版本给我的Ubuntu16.04.实验过程如下: 官网的教程是最牛逼的,先看看官网的安装教程吧:...
  • linux下gcc版本切换 起因是最近在ubuntu中安装了多个gcc版本,想要方便地实现版本互相切换,就发现了这个方法,不局限于gcc,它还可以更改比如java的配置。具体相关,goolge update-alternatives可以得到详细解答。 ...
  • 解压后有libstdc++.so.6.0.0.20,libstdc++.so.6.0.0.24两个文件,用来替换/usr/lib/x86_64-linux-gnu中libstdc++.so.6.*,解决版本过低或过高的问题
  • 出现了如下的情况:输入命令 sudo gcc -v时,显示版本gcc5.3.0(之前用编译的方式安装的);而输入命令 gcc -v时显示版本为5.4.0(系统自带)。经检查,gcc5.3.0在/usr/local/bin下存在软连接,即这个文件夹下...
  • ubuntu18.04安装gcc及切换gcc版本

    千次阅读 2020-08-16 11:11:23
    1.下载gcc/g++ 5 ...2.查看自己gcc和g++版本 gcc --version g++ --version 3.链接gcc/g++实现版本切换 cd /usr/bin sudo rm gcc sudo ln -s gcc-7 gcc sudo rm g++ sudo ln -s g++-7 g++ ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 106,431
精华内容 42,572
关键字:

不同版本gcc