如何解决 Ubuntu 22.04 上的“软件包‘g++-8’没有安装候选项”错误?

如何解决 Ubuntu 22.04 上的“软件包‘g++-8’没有安装候选项”错误?

我在基于 Ubuntu 22.04 的系统上使用 gcc/g++ 编译器作为 OpenFace 安装过程的一部分。在下载和安装 gcc 时,它会自动下载最新的 g++-11 版本,而我需要 g++-8 版本才能运行该软件。如何在系统上替换/安装 g++-8 软件包而不自动更新到 g++-11?如能提供帮助,我将不胜感激!

答案1

Ubuntu 21.10 生命周期结束

Ubuntu 21.10 Impish Indri - 2022 年 7 月 14 日终止服务

添加 impish 存储库。基本上,你只需要 universe。

sudo cat <<EOF | sudo tee /etc/apt/sources.list.d/gcc-8.list
deb http://old-releases.ubuntu.com/ubuntu/ impish main restricted universe multiverse
EOF

sudo apt update
apt-cache policy g++-8
apt-cache show g++-8
sudo apt install g++-8

请务必阅读 如何选择默认的gcc和g++版本?

答案2

g++-8 软件包已在 Ubuntu 22.04 及更高版本的默认存储库中停用。要在 Ubuntu 22.04 中安装 Ubuntu 21.10 中的 g++-8 软件包,请运行以下命令:

sudo apt update
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/g++-8_8.5.0-0ubuntu4_amd64.deb 
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/gcc-8_8.5.0-0ubuntu4_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/gcc-8-base_8.5.0-0ubuntu4_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libgcc-8-dev_8.5.0-0ubuntu4_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/cpp-8_8.5.0-0ubuntu4_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libmpx2_8.5.0-0ubuntu4_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libstdc++-8-dev_8.5.0-0ubuntu4_amd64.deb
sudo apt install ./libmpx2_8.5.0-0ubuntu4_amd64.deb ./cpp-8_8.5.0-0ubuntu4_amd64.deb ./gcc-8-base_8.5.0-0ubuntu4_amd64.deb ./libgcc-8-dev_8.5.0-0ubuntu4_amd64.deb ./gcc-8_8.5.0-0ubuntu4_amd64.deb ./libstdc++-8-dev_8.5.0-0ubuntu4_amd64.deb ./g++-8_8.5.0-0ubuntu4_amd64.deb

相关内容