我正在嘗試在Atmel At91 SAMA5D3平臺的LEDE中構建內核映像,壓縮類型爲XZ。一旦uImage成功,我將這個圖像轉移到我的SD卡上,並嘗試用它啓動。然而,開機總是失敗,以下消息:LEDE:不支持uImage壓縮類型
引導的uImage ... 不支持的uImage的壓縮類型 SD/MMC:無法加載圖像
我一些其他的形象嘗試,這將很好地工作所以我不確定是否有任何內核配置,我也需要啓用或禁用。
任何人都可以幫忙嗎?謝謝!
我正在嘗試在Atmel At91 SAMA5D3平臺的LEDE中構建內核映像,壓縮類型爲XZ。一旦uImage成功,我將這個圖像轉移到我的SD卡上,並嘗試用它啓動。然而,開機總是失敗,以下消息:LEDE:不支持uImage壓縮類型
引導的uImage ... 不支持的uImage的壓縮類型 SD/MMC:無法加載圖像
我一些其他的形象嘗試,這將很好地工作所以我不確定是否有任何內核配置,我也需要啓用或禁用。
任何人都可以幫忙嗎?謝謝!
該消息似乎表明,無論您用於加載Linux內核的啓動程序是否沒有任何解壓縮功能。
因此,您不需要引導程序執行解壓縮,您需要構建一個自解壓縮的內核映像,即zImage。
如果您堅持,您可以將zImage封裝在uImage頭中,但由於zImage是自解壓的,因此圖像需要標記爲「未壓縮」。
請注意,文件類型uImage由U-Boot實用程序mkimage生成,並且此類型的圖像用於U-Boot。
其他引導程序可能會或可能不會識別uImage。
ARM的引導程序預計支持zImage。
您的帖子在細節方面是稀疏的。
如果您所做的只是在內核的菜單配置中選擇XZ
而不是默認的gzip
作爲Kernel compression mode
,並且確實構建了zImage,那麼使用的參數不正確。
uImage中的zImage必須標記爲「未壓縮」。
謝謝@sawdust!我明白了,但是有沒有內核配置將uImage標記爲「未壓縮」類型? – user4826904
*「有沒有內核配置將uImage標記爲」未壓縮「類型?」* - 不,因爲內核配置指定如何構建內核*,並且執行** mkimage **命令*內核Image(和zImage)已經建成。研究** mkimage **命令的** man **頁面。所使用的壓縮類型是** mkimage **命令的參數。 **但是,也許你會問錯誤的後續問題。**你是否確切知道你有什麼樣的內核映像? – sawdust
謝謝。我的內核映像有一個uImage,魔術驗證後顯示錯誤信息。所以也許我必須找到'mkimage'在哪裏執行,並檢查正確的參數? – user4826904