新しいバージョンのパッケージをインストールするためにエマージを強制する方法は?

新しいバージョンのパッケージをインストールするためにエマージを強制する方法は?

私はGentooを使用しており、最新バージョンをインストールする必要がありますgcc。以下から入手できます。公式Gentooパッケージリポジトリ

同等の作業をしたいのですが、apt-get install gcc=8.0.3-r1方法がわかりません。バージョン8である必要はありません。 4.8以上です。

私が試したこと:

emerge =sys-devel/gcc-8.0.3返品there are no ebuilds to satisfy "=sys-devel/gcc-8.0.3".

emerge-webrsync返品command not foundeix-sync正常に完了したようですが、eix sys-devel/gcc4.7以前のバージョンのみが返されます。そのうちの1つが同等であればいいのですが、そうでapt-get updateはありません。

私は何が間違っていましたか?

ベストアンサー1

質問

emerge-webrsynchoeflingが言ったように、fallbackコマンドと同様にPortageが破損していると思います。 gcc:6以下のすべてのバージョンはブロックまたはハードブロックされ、multilibが変更されました。

解決策

  1. ポーテージを修理してください。読むプロジェクト:Portage /壊れたPortageの修理<プロジェクト:Portage。現在のバージョンは2.3.66-r1ですが、欲しくないコメントで述べたように、2.2.13より高い
  2. マスクsys-kernel/gentoo-sources> =カーネルバージョンのすべてのバージョン。個人的な意見では、安定したカーネルを構築するには強力なコンパイラチェーンが必要です。
  3. テストemerge --sync
  4. 手順3が完了したらを実行しますemerge -1 portage。これにより、手順1で作成したPortageがツリーの公式Portageに置き換えられます。

任意に選択できる

  1. システム全体を再構築します。
    • emerge -e @system
    • emerge -e @world
  2. あなたの中心を明らかにしなさい。そして更新してください。

おすすめ記事