![推荐提供另一个版本的 GCC 的方法?](https://linux22.com/image/1483548/%E6%8E%A8%E8%8D%90%E6%8F%90%E4%BE%9B%E5%8F%A6%E4%B8%80%E4%B8%AA%E7%89%88%E6%9C%AC%E7%9A%84%20GCC%20%E7%9A%84%E6%96%B9%E6%B3%95%EF%BC%9F.png)
我在 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
)即可使用这个新的编译器:make
cmake
export CC=</installation/path/to/gcc>/bin/gcc
make .
或者
CC=</installation/path/to/gcc>/bin/gcc cmake <path>