我想先在 ARM 映像上安裝一些軟體包,然後再將其刷新到 SD 卡。到目前為止,我已經循環安裝了映像
sudo mount -o loop,offset=99614720 archlinuxarm-13-06-2012.img /mnt
並將 ARM 鏡像添加到我的/etc/pacman.d/mirrorlist
.然後我嘗試跑步
sudo pacman --root /mnt --arch arm --conf /mnt/etc/pacman.conf -S curl
但它失敗並顯示以下輸出......
warning: curl-7.26.0-1 is up to date -- reinstalling
resolving dependencies...
looking for inter-conflicts...
Targets (1): curl-7.26.0-1
Total Download Size: 0.48 MiB
Total Installed Size: 1.50 MiB
Net Upgrade Size: 0.00 MiB
Proceed with installation? [Y/n] Y
:: Retrieving packages from core...
error: failed retrieving file 'curl-7.26.0-1-arm.pkg.tar.xz' from mirror.lividpenguin.com : The requested URL returned error: 404
curl-7.26.0-1-arm 492.9 KiB 293K/s 00:02 [##################################] 100%
(1/1) checking package integrity [##################################] 100%
(1/1) loading package files [##################################] 100%
(1/1) checking for file conflicts [##################################] 100%
(1/1) checking available disk space [##################################] 100%
(1/1) upgrading curl [##################################] 100%
call to execv failed (Exec format error)
error: command failed to execute correctly
關於如何在沒有仿真的情況下使其工作的任何想法?知道什麼是execv
-d 嗎?
更新
我發現它正在嘗試運行ldconfig
,這顯然失敗了。幸運的是,我不需要運行它!
答案1
大多數 Linux 發行版不支援在不相容的主機系統上安裝目標系統的軟體套件。阿奇也不例外。ldconfig
只是軟體包安裝過程中可能需要運作的目標系統的眾多程式之一。
在 ARM 裝置本身或 QEmu 等模擬器執行安裝。
或者,下載該tar.xz
文件,修改存檔以刪除該.INSTALL
文件,然後對修改後的存檔再次執行 pacman。然後處理由於沒有手動運行安裝腳本而導致的損壞。