Gentoo

如何強制emerge安裝更新版本的包?

  • July 22, 2019

我正在使用Gentoo,需要安裝更新版本gcc的.

我想做相當於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/gcc只返回最高 4.7 的版本。我希望其中一個等同於,apt-get update但看起來並非如此。

我究竟做錯了什麼?

問題

正如hoefling 所說,我也相信您的portage 已損壞,emerge-webrsync備用命令也是如此。gcc:6 以下的所有版本都被屏蔽或硬屏蔽,並且 multilib 現在已更改。

解決方案

  1. 修復 Portage。閱讀Project:Portage/修復損壞的 portage < Project: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
  1. 揭開你的核心。並更新它。

引用自:https://unix.stackexchange.com/questions/522703