無法下載 arm64 機器的 gnome-core 依賴項

無法下載 arm64 機器的 gnome-core 依賴項

我想下載gnome-core軟體包依賴項以安裝在 debian 10 arm-64 設備上,所以我使用了以下命令:

sudo apt-cache depends  -i gnome-core:arm64 | awk '/Depends:/ {print $2}' | xargs  apt-get download

並得到這個錯誤:

E: Unable to locate package <adwaita-icon-theme:arm64>
E: Unable to locate package <fonts-cantarell:arm64>
E: Unable to locate package <sound-theme-freedesktop:arm64>
E: Unable to locate package <gnome-backgrounds:arm64>
E: Unable to locate package <gnome-session:arm64>
E: Unable to locate package <gnome-shell-extensions:arm64>
E: Unable to locate package <gnome-user-docs:arm64>
E: Unable to locate package <gsettings-desktop-schemas:arm64>
E: Unable to locate package <firefox:arm64>
E: Unable to locate package <chromium-browser:arm64>
E: Unable to locate package <system-config-printer-common:arm64>

之前使用了arm64架構,dpkg --add-architecture arm64 並且存儲庫都main啟用contrib了,但是,我這樣做了apt updateapt-get update然後我重試了,但沒有發生任何變化,並得到了相同的錯誤。

我使用的是 debian 10 buster x86-64 WSL 機器。

問題是什麼以及如何下載該依賴項?

答案1

apt-cache的輸出不能以這種方式解析;你最終會得到

...
  Depends: <adwaita-icon-theme:arm64>
    adwaita-icon-theme
...

並且您正在提取的<adwaita-icon-theme:arm64>套件名稱不是有效的。

' 輸出中的尖括號apt-cache depends意味著解析器沒有找到要安裝的版本,下面的行顯示了應該安裝的內容 - 對於adwaita-icon-theme,發生這種情況是因為它被標記為“Multi-Arch:foreign”,這允許本機版本滿足依賴性。

除此之外,您沒有解析替代依賴項,例如

 |Depends: firefox-esr:arm64
 |Depends: firefox:arm64
 |Depends: chromium:arm64
 |Depends: <chromium-browser:arm64>

您只需要安裝其中之一,而不是全部。

所有這些使得apt-cache建立用於外部架構下載的軟體包清單變得非常困難。你最好使用外部最小 chroot 並且apt-get install --download-only

  • 安裝mmdebstrap

    sudo apt install mmdebstrap qemu-user qemu-user-static binfmt-support libfakeroot:arm64 libfakechroot:arm64
    
  • 設定預設arm64chroot:

    sudo mmdebstrap --architectures=arm64 buster gnome-core-arm64
    
  • 輸入chroot:

    sudo chroot gnome-core-arm64
    
  • 下載gnome-core依賴項:

    apt-get update
    apt-get install --download-only gnome-core
    
  • 退出 chroot,您將在gnome-core-arm64/var/cache/apt/archives.

相關內容