推荐提供另一个版本的 GCC 的方法?

推荐提供另一个版本的 GCC 的方法?

我在 Fedora 23 上,默认安装 GCC 5.3.1。

对于使用 GCC 4.9 编译的库的交叉编译项目,我想并行安装 GCC 4.9。

(非常古老的)帖子描述了如何为 GCC 3.8 执行此操作并建议从头开始构建任何其他版本。

现在已经 3 年过去了 - 有没有办法在单独的目录中提供旧版本的 GCC(使用包管理器),以便与已安装的 GCC 5.3 并行使用?

答案1

这是不是这是对我的问题的回答,因为我只展示了如何以在 Fedora 23 上工作的方式构建和使用 GCC 4.9(可能在任何其他平台上也适用)。这只是我必须执行的步骤的汇编,以便使用 GCC 的另一个版本而不是已发布的版本进行编译。

所示步骤取自这里

  • 查找并下载并提取适当的档案http://www.gnu.org/software/gcc/mirrors.html

    wget ftp://ftp.fu-berlin.de/unix/languages/gcc/releases/gcc-4.9.3/gcc-4.9.3.tar.bz2
    mkdir src; cd src
    tar xf ../gcc-4.9.3.tar.bz2
    
  • 下载前提条件:

    cd gcc-4.9.3
    ./contrib/download_prerequisites
    
  • 配置构建(--disable-multilib当您不需要 32 位构建时添加,设置安装prefix,添加/删除语言):

    mkdir ../objdir; cd ../objdir
    ../gcc-4.9.3/configure \
        --prefix=`pwd`/../../gcc-4.9.3-x86_64 \
        --enable-languages=c,c++ \
        --disable-multilib
    
  • 实际构建并安装 GCC:

    make -j4
    make install
    

现在,您只需在运行或之前设置CC(也可能设置CXX)即可使用这个新的编译器:makecmake

export CC=</installation/path/to/gcc>/bin/gcc
make .

或者

CC=</installation/path/to/gcc>/bin/gcc cmake <path>

相关内容