【问题标题】:how to install gcc 4.9.2 on RHEL 7.4如何在 RHEL 7.4 上安装 gcc 4.9.2
【发布时间】:2018-04-20 21:41:48
【问题描述】:

我正在尝试在 Linux 上安装 gcc 和 g++ 4.9.2。我对 Linux 很陌生,我看到了一些关于如何安装的指南,但每次我遇到另一个问题。我的机器上现在没有任何 gcc。 我的 Linux 版本是: Red Hat Enterprise Linux Server 7.4 版 (Maipo) 有人可以帮助我并从头到尾给我指示如何正确执行此操作吗? 非常感谢。

【问题讨论】:

    标签: linux gcc g++ centos7 rhel7


    【解决方案1】:

    安装系统编译器gcc、g++,安装命令为# yum install gcc-c++→提供4.8.5版本:/usr/bin/{ gcc, g++ }

    其他选项:1. gcc53-c++-5.3.0-1.el6.x86_64.rpm → https://drive.google.com/file/d/0B7S255p3kFXNbTBneHgwSzBodFE/view?usp=sharing : 下载安装:# cd Downloads/ && yum install ./gcc53-c++-5.3.0-1.el6.x86_64.rpm .....提供/usr/bin/{gcc53, g++53}

    1. 开发工具集:https://www.softwarecollections.org/en/scls/rhscl/devtoolset-6/# yum-config-manager --enable rhel-server-rhscl-7-rpms

    安装 gcc、g++ 4.9.2 版:# yum install devtoolset-3-gcc-c++

    注意:您可以同时安装任意多个 gcc/g++ 版本。 (系统编译器是必须的。)


    1. gcc49-c++-4.9.3-1.el6.x86_64.rpm https://drive.google.com/file/d/1Pwq1ua80dGM72i7rpDNAIIdfcR1WK-hG/view?usp=sharing → 提供/usr/bin/{gcc49, g++49}

    1. gcc63-c++-6.3.0-1.el7.x86_64.rpm https://drive.google.com/file/d/1t4WrgvpEP-6_NN3qMJhz9MS3CJhHrHKc/view?usp=sharing → 提供/usr/bin/{gcc63, g++63}

    2. gcc45-c++-4.5.4-1.el7.x86_64.rpm https://drive.google.com/file/d/15aRg-BPhuyaEyZA9Jy-iAyC21_pwN7nD/view?usp=sharing → 提供/usr/bin/{gcc45, g++45, gfortran45}

    3. gcc42-c++-4.2.4-1.el6.x86_64.rpm https://drive.google.com/file/d/1eYWk6Nd63xeqqAUoJldNWRuwEGO6cAyv/view?usp=sharing → 提供/usr/bin/{gcc42, g++42}


    1. gcc73-c++-7.3.0-1.el7.x86_64.rpm https://drive.google.com/file/d/1PgwCP5tu8D0EJbJVTqJd7Vg8dJ4l4noi/view?usp=sharing → 提供/usr/bin/{gcc73, g++73}

    2. gcc48-c++-4.8.5-1.el6.x86_64.rpm https://drive.google.com/file/d/1w6fW6oSflDDYZt_cOpGj3QMEmzUC8Q9L/view?usp=sharing → 提供/usr/bin/{gcc48, g++48, gfortran48}

    3. gcc84-c++-8.4.0-1.el7.x86_64.rpm https://drive.google.com/file/d/1xgFtsiDi2uiB1B0AcOaSpxVizzET-pJf/view?usp=sharing → 提供/usr/bin/{gcc84, g++84, gfortran84}

    【讨论】:

    • 谢谢,您的回答很有帮助,但我还有一个问题。如果我想安装 gcc 6.2,我怎样才能找到这个特定版本的编译器?因为你给了我一个安装 c++-5.3-1 的选项。我在哪里可以找到其他版本可供选择?
    • 以上devtoolset-6链接:点击CentOS 7→mirror.centos.org/centos/7/sclo/x86_64/rhdevtoolset -3 -4 -6 -7:devtoolset-6有gcc-6.3.1: # yum install devtoolset-6-gcc-c++:gcc-6 ao将自动安装为依赖项。 mirror.centos.org/centos/7/sclo/x86_64/rh/devtoolset-6 。 ....... 关于 gcc53-c++-5.3.0-1.el6.x86_64.rpm : 提供 /usr/bin/{gcc53, g++53}。
    • @KnudLarsen,您的资源很棒,但是您能否提供一步一步的说明,如何编译将使用来自标准 CentOS 7 安装的旧库的新 gcc?也许已经存在关于此类指令的一些链接?这将非常有帮助。
    • 我实际上在 Fedora 31 上,我想要 gcc-8,我尝试从 pkgs.org 下载,但我陷入了依赖地狱,一个像你链接的那样的自包含包真的很感激
    • @KnudLarsen 我有一个更正式的问题here你能写一个更详细的答案吗?
    【解决方案2】:

    RHEL 带有预配置的 repo,您​​可以搜索所需的包并使用 yum 包管理器进行安装。

    为此,首先运行(搜索gcc

    $ sudo yum search gcc 
    

    这将显示具有匹配名称的可用软件包列表

    ============================ Name Exactly Matched: gcc =============================
    gcc.x86_64 : Various compilers (C, C++, Objective-C, ...)
    gcc.x86_64 : Various compilers (C, C++, Objective-C, ...)
    gcc.i686 : Various compilers (C, C++, Objective-C, ...)
    =========================== Name & Summary Matched: gcc ============================
    gcc-c++.x86_64 : C++ support for GCC
    gcc-c++.i686 : C++ support for GCC
    gcc-gdb-plugin.x86_64 : GCC plugin for GDB
    gcc-gdb-plugin.i686 : GCC plugin for GDB
    gcc-gdb-plugin.x86_64 : GCC plugin for GDB
    gcc-objc.x86_64 : Objective-C support for GCC
    ...
    
    

    通过运行安装你需要的包(安装gcc-c++

    $ sudo yum install gcc-c++
    

    它将要安装的软件包并要求确认。

    Dependencies resolved.
    ====================================================================================
     Package           Architecture     Version                 Repository         Size
    ====================================================================================
    Installing:
     gcc-c++           x86_64           8.3.1-2.fc29            updates            12 M
    
    Transaction Summary
    ====================================================================================
    Install  1 Package
    
    Total download size: 12 M
    Installed size: 29 M
    Is this ok [y/N]:
    

    注意:上述步骤将安装软件包的最新可用版本。


    Install a particular Version of a Package
    Install all development tools

    【讨论】:

    • 谢谢,我安装了它并且它工作但我想要 gcc 4.9.2 但是当我检查它时(使用命令:gcc --vesion)我得到:gcc(GCC)4.8.5 20150623( Red Hat 4.8.5-16)我也尝试以相同的方式安装 g++:yum install g++,这不起作用。它如何与 g++ 一起工作?
    • 首先搜索你想要的包,例如yum search gcc-c++,你会得到一个可用包的列表,然后安装提到正确名称的包。
    • 我进行了搜索,但没有看到每个编译器的版本。我只能看到名字。
    • 我终于安装成功了。这样: sudo yum install centos-release-scl sudo yum install devtoolset-6 scl enable devtoolset-6 bash 所以我的机器上有 gcc 7.2.1。但现在我有另一个问题。旧的 gcc 可执行文件已被新的 gcc 运行,现在我无法使用以前版本的 gcc。有没有办法解决这个问题?
    • 最好避免覆盖 RHEL 7 上的默认 gcc 编译器,因为使用 GCC scl enable devtoolset-3 bash 加载 GCC 4.9 环境。
    【解决方案3】:
    yum install centos-release-scl-rh
    yum install devtoolset-3-gcc devtoolset-3-gcc-c++
    update-alternatives --install /usr/bin/gcc-4.9 gcc-4.9 /opt/rh/devtoolset-3/root/usr/bin/gcc 10
    update-alternatives --install /usr/bin/g++-4.9 g++-4.9 /opt/rh/devtoolset-3/root/usr/bin/g++ 10
    

    【讨论】:

    猜你喜欢
    • 2018-11-13
    • 1970-01-01
    • 1970-01-01
    • 2018-05-04
    • 2012-01-05
    • 1970-01-01
    • 2023-03-31
    • 2020-05-22
    • 2021-10-14
    相关资源
    最近更新 更多