GCC5.4安装

1.下载

镜像站点:https://gcc.gnu.org/mirrors.html

速度还不错的:ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/

2.解压安装依赖库

./contrib/download_prerequisites

3.配置

./configure --disable-multilib(不生成编译为其他平台可执行代码的交叉编译器)

4.编译安装

make && make install

5.测试代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <string>
#include <iterator>
#include <algorithm>
#include <array>
  
int main()
{
    // construction uses aggregate initialization
    std::array<int, 3> a1{ {1,2,3} };  // double-braces required
    std::array<int, 3> a2 = {1, 2, 3}; // except after =
    std::array<std::string, 2> a3 = { {std::string("a"), "b"} };
  
    // container operations are supported
    std::sort(a1.begin(), a1.end());
    std::reverse_copy(a2.begin(), a2.end(),
                      std::ostream_iterator<int>(std::cout, " "));
  
    std::cout << '\n';
  
    // ranged for loop is supported
    for(auto& s: a3)
        std::cout << s << ' ';
    std::cout << '\n';   
}

 

如果出现如下报错:

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./test)

更新软连接即可:

/usr/lib64/libstdc++.so.6 -> /usr/lib64/libstdc++.so.6.0.21

### 安装 GCC 5.4 的具体方法 在 Ubuntu 16.04安装 GCC 5.4 编译器可以通过以下方式实现: #### 方法一:从源码编译安装 GCC 5.4 如果需要特定版本的 GCC,可以从官方 GNU FTP 站点下载源码并自行编译。 1. **下载 GCC 源码** 访问 GNU 官方网站获取 GCC 5.4.0 的压缩包: ```bash wget http://ftp.gnu.org/gnu/gcc/gcc-5.4.0/gcc-5.4.0.tar.gz tar -zxvf gcc-5.4.0.tar.gz ``` 2. **安装依赖项** 在编译前需确保系统已安装必要的构建工具和库文件: ```bash sudo apt-get update sudo apt-get install build-essential libgmp-dev libmpfr-dev libisl-dev libcloog-ppl-dev libmpc-dev ``` 3. **准备构建环境** 进入解压后的目录并创建一个新的构建目录用于交叉编译: ```bash cd gcc-5.4.0 mkdir ../gcc-5.4-build && cd ../gcc-5.4-build ``` 4. **配置编译选项** 使用 `../gcc-5.4.0/configure` 脚本指定目标路径和其他参数: ```bash ../gcc-5.4.0/configure \ --prefix=/usr/local/gcc-5.4 \ --enable-languages=c,c++ \ --disable-multilib \ --program-suffix=-5.4 ``` 参数说明: - `--prefix`: 设置安装路径。 - `--enable-languages`: 启用的语言支持(C 和 C++ 是最常见的需求)。 - `--disable-multilib`: 关闭多架构支持(适用于大多数桌面开发场景)。 - `--program-suffix`: 避免覆盖默认的 GCC 版本。 5. **编译与安装** 执行以下命令完成实际的编译过程: ```bash make -j$(nproc) sudo make install ``` 6. **验证安装** 完成后可以检查是否正确安装GCC 5.4: ```bash /usr/local/gcc-5.4/bin/gcc-5.4 -v ``` --- #### 方法二:利用 APT 包管理器安装预编译版 GCC 5.4 对于不需要自定义功能的一般用途,可以直接通过 APT 获取 GCC 5.4。 1. **启用 Universe 存储库** 如果尚未启用 Universe 组件,则先激活它: ```bash sudo add-apt-repository universe sudo apt-get update ``` 2. **安装 GCC 5.4 及其关联组件** ```bash sudo apt-get install gcc-5 g++-5 ``` 3. **设置默认版本** 若系统中存在其他版本的 GCC,默认可能不会切换至新安装的版本。此时可借助 `update-alternatives` 工具调整优先级: ```bash sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 100 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 100 sudo update-alternatives --config gcc sudo update-alternatives --config g++ ``` 4. **确认当前使用的 GCC 版本** 输入以下命令查看当前活动的 GCC 版本: ```bash gcc -v ``` --- #### 常见问题及其解决办法 1. **错误:dereferencing pointer to incomplete type 'struct ucontext'** 此类问题是由于头文件冲突引起的。解决方案是在相关代码中替换数据结构名称: ```diff - struct ucontext *uc_ = context->cfa; + struct ucontext_t *uc_ = context->cfa; ``` 修改完成后重新执行 `make` 流程[^3]。 2. **无法识别最新安装GCC 版本** 当发现即使完成了安装操作但仍显示旧版本时,可能是 PATH 环境变量未更新所致。尝试显式调用 `/usr/local/gcc-5.4/bin/gcc-5.4` 或将其加入全局 PATH 中[^3]: ```bash export PATH="/usr/local/gcc-5.4/bin:$PATH" source ~/.bashrc ``` --- ### 总结 以上两种方案分别适合不同需求层次下的用户群体。前者提供了完全控制权以便于定制化;后者则更加简便快捷适合作为日常开发环境的一部分。无论采用哪种途径,请务必遵循各步骤中的细节提示以免遗漏重要环节影响最终效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值