我在 Fedora 23 上,它默认安装 GCC 5.3.1。
对于使用 GCC 4.9 编译的库的交叉编译项目,我想并行安装 GCC 4.9。
这篇(很老)的帖子描述了如何为 GCC 3.8 执行此操作,并建议从头开始构建任何其他版本。
现在是 3 年后 - 有没有办法在单独的目录中提供旧版本的 GCC(使用包管理器),它可以与已安装的 GCC 5.3 并行使用?
这不是我的问题的答案,因为我只展示了如何以适用于 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
Run Code Online (Sandbox Code Playgroud)下载先决条件:
cd gcc-4.9.3
./contrib/download_prerequisites
Run Code Online (Sandbox Code Playgroud)配置构建(--disable-multilib在不需要 32 位构建时prefix添加,设置 install- ,添加/删除语言):
mkdir ../objdir; cd ../objdir
../gcc-4.9.3/configure \
--prefix=`pwd`/../../gcc-4.9.3-x86_64 \
--enable-languages=c,c++ \
--disable-multilib
Run Code Online (Sandbox Code Playgroud)实际构建和安装 GCC:
make -j4
make install
Run Code Online (Sandbox Code Playgroud)您现在可以通过在运行或之前设置CC(也许也CXX)来使用这个新的编译器:makecmake
export CC=</installation/path/to/gcc>/bin/gcc
make .
Run Code Online (Sandbox Code Playgroud)
或者
CC=</installation/path/to/gcc>/bin/gcc cmake <path>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6660 次 |
| 最近记录: |