「パッケージ gcc-8 にはインストール候補がありません」というエラーを解決するにはどうすればいいですか? sudo-apt install gcc-8 でインストールしようとしています

「パッケージ gcc-8 にはインストール候補がありません」というエラーを解決するにはどうすればいいですか? sudo-apt install gcc-8 でインストールしようとしています

Ubuntu 20.04 ターミナルを使用して、システムに OpenFace ツールキットをインストールしようとしています。インストールには gcc/g++ バージョン 8 が必要です。システム上の現在の gcc バージョンを確認したところ、インストールされているバージョンは gcc-11 です。gcc-11 バージョンを gcc-8 に置き換える方法、または gcc-8 パッケージをダウンロードしてインストールする方法はありますか? ご協力いただければ幸いです。よろしくお願いします。

答え1

gcc-8 パッケージは、Ubuntu 22.04 以降のデフォルト リポジトリでは廃止されましたが、Ubuntu 20.04 のデフォルト リポジトリではまだ利用可能です。Ubuntu 20.04 から gcc-8 パッケージを Ubuntu 22.04 にインストールするには、次のコマンドを実行します。

sudo apt update
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/gcc-8_8.4.0-3ubuntu2_amd64.deb
wget http://mirrors.edge.kernel.org/ubuntu/pool/universe/g/gcc-8/gcc-8-base_8.4.0-3ubuntu2_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libgcc-8-dev_8.4.0-3ubuntu2_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/cpp-8_8.4.0-3ubuntu2_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/universe/g/gcc-8/libmpx2_8.4.0-3ubuntu2_amd64.deb
wget http://mirrors.kernel.org/ubuntu/pool/main/i/isl/libisl22_0.22.1-1_amd64.deb
sudo apt install ./libisl22_0.22.1-1_amd64.deb ./libmpx2_8.4.0-3ubuntu2_amd64.deb ./cpp-8_8.4.0-3ubuntu2_amd64.deb ./libgcc-8-dev_8.4.0-3ubuntu2_amd64.deb ./gcc-8-base_8.4.0-3ubuntu2_amd64.deb ./gcc-8_8.4.0-3ubuntu2_amd64.deb

元の回答(現在は廃止されています):

gcc-8 パッケージは、Ubuntu 22.04 以降のデフォルト リポジトリでは廃止されました。Ubuntu 21.10 から gcc-8 パッケージを Ubuntu 22.04 にインストールするには、次のコマンドを実行します。

sudo apt update
sudo apt remove gcc-11 # optional
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
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

質問の中で gcc-11 も削除したいとおっしゃっていたので、上記のコマンドで gcc-11 を削除しました。gcc-8 と一緒に gcc-11 をインストールしたままにしたい場合は、sudo apt remove gcc-11コマンドを省略してください。

答え2

もう一つの解決策はジョデリが提案したものだ'gcc-7' にはインストール候補がありません問題。

ターミナルでsudo nano /etc/apt/sources.list次のように入力し、ファイルの末尾に追加します。

deb [arch=amd64] http://archive.ubuntu.com/ubuntu focal main universe

次に以下を実行します:

sudo apt update
sudo apt install gcc-8 g++-8

また、異なるバージョンの gcc を管理するには、 を使用するのも良い方法ですupdate-alternatives。たとえば、これらの手順を実行した後、/usr/bin ディレクトリに gcc-8 と gcc-11 がある場合は、ターミナルで次を実行します。

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 10
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 20
sudo update-alternatives --config gcc

依存関係の問題を引き起こす可能性があるので、これが karel のものよりはるかに優れているかどうかはわかりません。/etc/apt/sources.listすべてのパッケージを手動でダウンロードする必要がないため、編集がより快適になると思います。

答え3

OpenFaceのバージョンを2.0.0から2.2.0にアップグレードしていないと思います

スクリプトはすでに 14 か月前にアップグレードされています。

 ...
 # If we're not on 18.04 
 sudo apt-get -y update
 
 if [[ `lsb_release -rs` != "18.04" ]]   then   
     echo "Adding ppa:ubuntu-toolchain-r/test apt-repository "
     sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
     sudo apt-get -y update 
 fi
 
 sudo apt-get -y install build-essential
 sudo apt-get -y install gcc-8 g++-8 
 ...

関連している:

https://github.com/TadasBaltrusaitis/OpenFace

お役に立てれば。

関連情報