将Ubuntu 12.04上的GCC4.6.3升级到4.8.2 我将更新Ubuntu 12.04到4.82的默认GCC(4.4.3版),虽然编译需要一个独立的C++编译器 admin@ubuntu: /usr/local/gcc_build$ sudo make

将Ubuntu 12.04上的GCC4.6.3升级到4.8.2 我将更新Ubuntu 12.04到4.82的默认GCC(4.4.3版),虽然编译需要一个独立的C++编译器 admin@ubuntu: /usr/local/gcc_build$ sudo make,gcc,g++,ubuntu-12.04,Gcc,G++,Ubuntu 12.04,结果是 configure: error: C++ compiler missing or inoperational make[2]: *** [configure-stage1-libcpp] Error 1 因此,我转向安装g++的过程,优先选择最新版本,这意味着我希望直接从源代码进行编译,而不是apt-get。但说真的,我还是找不到源头!(欧欧欧)。另一方面,GCC的源代码是否也与我下载的tar文件中的g++的源代码一起提供?谢谢 PS:问题仍然没有通过admin@ubuntu:/us

结果是

configure: error: C++ compiler missing or inoperational
make[2]: *** [configure-stage1-libcpp] Error 1
因此,我转向安装
g++
的过程,优先选择最新版本,这意味着我希望直接从源代码进行编译,而不是
apt-get
。但说真的,我还是找不到源头!(欧欧欧)。另一方面,GCC的源代码是否也与我下载的tar文件中的
g++
的源代码一起提供?谢谢


PS:问题仍然没有通过
admin@ubuntu:/usr/local/gcc\u build$/home/admin/gcc-4.8.2/configure--enable languages=c,c++
您可以轻松编译源代码

以下命令适用于GCC4.7。对于gcc 4.8,它们也应该是合适的:

sudo apt-get install libmpfr-dev libgmp3-dev libmpc-dev flex bison

svn checkout svn://gcc.gnu.org/svn/gcc/trunk

cd trunk

./configure --prefix=/opt/gcc-4.8.2/usr/local/gcc-4.8.2 --enable-languages=c,c++

make

make install

编译器将放在/opt/目录中,因此您必须从那里使用它。

您想自己编译它吗?如果没有,则有PPA,如下所述

  • 通过以下方式添加ppa:

    sudo添加apt存储库ppa:ubuntu-toolchain-r/test

  • 安装g++和gcc(版本4.8)

    sudo-apt-get-update;sudo apt get安装gcc-4.8 g++-4.8

  • 逐个运行以下命令:

    sudo更新备选方案--删除所有gcc

    sudo更新替代方案--删除所有g++

    sudo更新替代方案——安装/usr/bin/gcc/usr/bin/gcc-4.8 20

    sudo更新替代方案——安装/usr/bin/g++g++/usr/bin/g++-4.8 20

    sudo更新备选方案——配置gcc

    sudo更新备选方案——配置g++


  • 就这样,你完了

    好的,我错过了关于启用语言的配置。但是你确定flex和bison是必要的吗?是的,它们是(不知道为什么,但没有它们编译停止抱怨…)我假设没有--prefix标志,gcc将被安装在适当的目录中,在进行安装之后,“gcc--version”将显示4.8.2?@Claudio谢谢,这非常有用。只有两件事:关于缺少
    bits/predefs.h
    的投诉由
    C_INCLUDE_PATH=/usr/INCLUDE/x86_64-linux-gnu/make
    而不是
    make
    修复;关于缺少gnu/stubs-32.h的投诉已由sudo apt get install libc6-dev-i386@TrevorHickey解决,我在11月底做了这件事<代码>gcc--版本显示
    4.9.0
    。我现在又在做了,谁知道呢。他们还没有按照要求完成4.8.2!为我工作,版本是gcc(Ubuntu 4.8.1-2ubuntu1~12.04)4.8.1据我所知,这安装了g++4.8.1。在我的情况下,我没有安装任何替代品,如果需要,我希望能够切换回4.6。我必须用
    sudo-update-alternations-install/usr/bin/gcc/usr/bin/gcc-4.6 20
    sudo-update-alternations-install/usr/bin/g++g++/usr/bin/g++-4.6 20
    。现在,我可以使用
    sudo update alternations--config gcc
    sudo update alternations--config g++
    随时轻松地更改版本。