如何安装 gcc-4.8

如何安装 gcc-4.8

我检查了我的系统上的 gcc 版本。

目前是 4.6.3。我读到 gcc-4.8 已经发布了。

我尝试了以下命令,但没有成功:

sudo apt-get install gcc (gcc is already the newest version)
sudo apt-get install gcc-4.8 (unable to locate package)

有人知道如何在 12.04 上安装这个包吗?

答案1

GCC-4.8 现在适用于 12.04 Precise 吗?

更新:截至 2013 年 6 月 5 日,目前有适用于 12.04(precise) 的 gcc 4.8.1 版本可供使用,网址为https://launchpad.net/~ubuntu-toolchain-r/+archive/test

简短的回答是:gcc-4.8目前可通过工具链 PPA 获得 12.04(Precise)版本 或者通过编译源代码(详情见下文)。

发布公告

gcc-4.8 发布公告是在 3 月 22 日制作的,因此您可能暂时不会在官方存储库中看到它。

不过,Launchpad 似乎确实有一个适用于工具链包含 gcc-4.8 的测试版本如下:https://launchpad.net/~ubuntu-toolchain-r/+archive/test

根据更新日志和软件包列表,有适用于 i386、amd64、arm 和 powerpc 的 deb,并且针对 raring 13.04 构建。

对于 12.04,gcc 的最新可用版本是 4.8.1,可在工具链 PPA 中使用。

添加工具链/测试 PPA:

要将 PPA 添加到您的系统,请打开终端(++ Ctrl)并运行以下命令:Altt

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50

系统还会提示您安装一些建议的软件包。这些软件包是推荐的,但对于 gcc-4.8 的安装是可选的。

gcc-4.8 中有哪些 C++ 功能在 gcc-4.7.2 中不可用?

  • 根据GNU组织gcc-4.7 支持多种C++11 功能
  • 从 gcc-4.8 版本开始,gcc-4.7 不再支持 64 个功能中的 8 个(请参阅GCC 中的 C++0x/C++11 支持

  • 这些功能包括:

    Language Features
    - Rvalue references for *this
    - Generalized attributes
    - Alignment support
    - Inheriting constructors
    Concurreny
    - Bidirectional Fences
    - Memory model
    - Abandoning a process and at_quick_exit
    - Thread-local storage 
    
  • 有关 gcc-4.8 中更改的完整列表,请参阅更改列表

我现在需要 12.04 Precise 上的这些 gcc 功能。我该如何获得它们?

从源代码构建 GCC-4.8:

如果你现在需要在 12.04 上使用 gcc-4.8,你唯一的选择是从源代码构建

请阅读GCC 安装常见问题解答安装之前。

您可以从 gnu.org 的镜像站点或直接从他们的SVN 服务器

以下是从源代码编译的步骤示例(请参阅这里了解更多详情。)请注意,这些可能会根据您的系统和偏好而有所不同。

  1. 下载源代码

    • 创建构建目录 ( mkdir gcc-build && cd gcc-build)
    • 下载源文件:(wget http://www.netgull.com/gcc/releases/gcc-4.8.0/gcc-4.8.0.tar.bz2调整此命令以使用适当的镜像站点
    • 解压文件 ( tar -xvjf <file name>)
  2. 安装一些额外的库(sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libc6-dev

  3. 编译源代码:./gcc-4.8.0/configure --prefix=/app/gcc/4.8.0
  4. 运行make(这将需要一些时间才能完成。去煮点咖啡,或者烤些饼干。;-))
  5. 安装代码:sudo make install

此过程完成后,运行命令gcc --version以验证安装是否已成功完成。您应该看到类似于以下输出的内容:

maggotbrain@foucault:~$ gcc --version
gcc (Linaro 4.8.0) 4.8.0
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

底线:感谢所有为您提供易于安装的 Ubuntu 反向移植的人。给他们一些您在运行时烤的饼干make。;-)

答案2

因此,上述答案有效,至少对于手动安装而言。尽管即使在之后sudo make install,运行gcc仍然只运行原始版本 4.6.3。即使尝试gcc-4.8或也gcc-4.8.0不起作用。运行/app/gcc/4.8.0/bin/gcc似乎是唯一对我有用的方法。我的意思是它有点蹩脚,但至少它有效。

相关内容