自学内容网 自学内容网

Ubuntu 20.04 默认的软件包源中可能不包含 gcc-11 和 g++-11

Ubuntu 20.04 默认的软件包源中可能不包含 gcc-11g++-11,你需要添加一个 PPA 源来获取更新的 GCC 版本。

解决步骤

1. 添加 GCC PPA 源

运行以下命令添加更新的工具链(toolchain):

 

bash

复制代码

sudo apt update sudo apt install -y software-properties-common sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update

2. 安装 GCC 和 G++

添加 PPA 源后,安装所需的 GCC 和 G++:

 

bash

复制代码

sudo apt install -y gcc-11 g++-11

3. 验证安装

检查 GCC 是否成功安装并处于可用状态:

 

bash

复制代码

gcc --version

如果显示版本 11 或更高,说明安装成功。

4. 切换默认 GCC 版本(可选)

如果系统中安装了多个版本的 GCC,需要手动切换:

 

bash

复制代码

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 50 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 50

然后选择默认版本:

 

bash

复制代码

sudo update-alternatives --config gcc sudo update-alternatives --config g++

5. 验证 libstdc++ 更新

更新完成后,确保新的 libstdc++ 已包含所需的符号:

 

bash

复制代码

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX

如果仍未解决,请尝试手动编译 GCC。


手动编译 GCC(备选方案)

如果 PPA 源不可用,可以手动下载并编译最新的 GCC:

  1. 下载 GCC 源码:

     

    bash

    复制代码

    wget http://ftp.gnu.org/gnu/gcc/gcc-11.3.0/gcc-11.3.0.tar.gz tar -xvzf gcc-11.3.0.tar.gz cd gcc-11.3.0

  2. 安装编译依赖:

     

    bash

    复制代码

    sudo apt install -y build-essential libgmp-dev libmpc-dev libmpfr-dev texinfo

  3. 配置和编译:

     

    bash

    复制代码

    ./configure --disable-multilib --enable-languages=c,c++ make -j$(nproc) sudo make install

完成后再次检查:

 

bash

复制代码

gcc --version

完成上述步骤后,应该能解决 gcc-11libstdc++ 的问题。


原文地址:https://blog.csdn.net/u010919083/article/details/143878541

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!