64位ubuntu 12.04编译linux内核提示mkimage command not found
生活随笔
收集整理的這篇文章主要介紹了
64位ubuntu 12.04编译linux内核提示mkimage command not found
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
今天心血來(lái)潮,想編譯以下linux內(nèi)核來(lái)玩玩。一開(kāi)始編譯x86的版本,遇到了openssl/opensslv.h文件缺失的問(wèn)題,經(jīng)過(guò)一番折騰,順利解決(解決過(guò)程請(qǐng)參見(jiàn)我的另外一篇博客“l(fā)inux(ubuntu)編譯linux內(nèi)核提示openssl/opensslv.h文件缺失”)。然后就進(jìn)而想編譯一個(gè)arm的版本出來(lái),放到我的mini2440開(kāi)發(fā)板上跑一跑。
于是按照博客(移植Linux3.4.2版本內(nèi)核到mini2440)的步驟,修改makefile,指定交叉編譯器(arm-linux-gcc)和配置文件(s3c2410_defconfig),運(yùn)行make uImage命令。大約半個(gè)多小時(shí)后,提示:
CC arch/arm/boot/compressed/decompress.oAS arch/arm/boot/compressed/debug.oCC arch/arm/boot/compressed/string.oSHIPPED arch/arm/boot/compressed/lib1funcs.SAS arch/arm/boot/compressed/lib1funcs.oSHIPPED arch/arm/boot/compressed/ashldi3.SAS arch/arm/boot/compressed/ashldi3.oSHIPPED arch/arm/boot/compressed/bswapsdi2.SAS arch/arm/boot/compressed/bswapsdi2.oLD arch/arm/boot/compressed/vmlinuxOBJCOPY arch/arm/boot/zImageKernel: arch/arm/boot/zImage is readyUIMAGE arch/arm/boot/uImage "mkimage" command not found - U-Boot images will not be built make[1]: *** [arch/arm/boot/uImage] 錯(cuò)誤 1 make: *** [uImage] 錯(cuò)誤 2百度一下,發(fā)現(xiàn)是因?yàn)橄到y(tǒng)缺少mkimage工具導(dǎo)致,解決辦法很簡(jiǎn)單,直接安裝一下這個(gè)工具就好:
leon@Ubuntu:~/linux$ sudo apt-get install uboot-mkimage 正在讀取軟件包列表... 完成 正在分析軟件包的依賴(lài)關(guān)系樹(shù) 正在讀取狀態(tài)信息... 完成 將會(huì)安裝下列額外的軟件包:u-boot-tools 下列【新】軟件包將被安裝:u-boot-tools uboot-mkimage 升級(jí)了 0 個(gè)軟件包,新安裝了 2 個(gè)軟件包,要卸載 0 個(gè)軟件包,有 221 個(gè)軟件包未被升級(jí)。 需要下載 71.4 kB 的軟件包。 解壓縮后會(huì)消耗掉 245 kB 的額外空間。 您希望繼續(xù)執(zhí)行嗎?[Y/n]y 獲取:1 http://cn.archive.ubuntu.com/ubuntu/ precise/main u-boot-tools amd64 2011.09-2 [60.4 kB] 獲取:2 http://cn.archive.ubuntu.com/ubuntu/ precise/main uboot-mkimage all 2011.09-2 [11.0 kB] 下載 71.4 kB,耗時(shí) 0秒 (201 kB/s) Selecting previously unselected package u-boot-tools. (正在讀取數(shù)據(jù)庫(kù) ... 系統(tǒng)當(dāng)前共安裝有 166411 個(gè)文件和目錄。) 正在解壓縮 u-boot-tools (從 .../u-boot-tools_2011.09-2_amd64.deb) ... Selecting previously unselected package uboot-mkimage. 正在解壓縮 uboot-mkimage (從 .../uboot-mkimage_2011.09-2_all.deb) ... 正在處理用于 man-db 的觸發(fā)器... 正在設(shè)置 u-boot-tools (2011.09-2) ... 正在設(shè)置 uboot-mkimage (2011.09-2) ..然后再次運(yùn)行生成命令,順利成功!
leon@Ubuntu:~/linux$ make uImageCHK include/config/kernel.releaseCHK include/generated/uapi/linux/version.hCHK include/generated/utsrelease.hCHK include/generated/bounds.hCHK include/generated/timeconst.hCHK include/generated/asm-offsets.hCALL scripts/checksyscalls.shCHK include/generated/compile.hKernel: arch/arm/boot/Image is readyKernel: arch/arm/boot/zImage is readyUIMAGE arch/arm/boot/uImage Image Name: Linux-4.9.0-dirty Created: Tue Jan 24 16:25:24 2017 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3200648 Bytes = 3125.63 kB = 3.05 MB Load Address: 30108000 Entry Point: 30108000生成的可執(zhí)行文件信息如下:
leon@Ubuntu:~/linux/arch/arm/boot$ file uImage uImage: u-boot legacy uImage, Linux-4.9.0-dirty, Linux/ARM, OS Kernel Image (Not compressed), 3200648 bytes, Tue Jan 24 16:25:24 2017, Load Address: 0x30108000, Entry Point: 0x30108000, Header CRC: 0xE1FE38F1, Data CRC: 0x5E772F78搞定!收工!
總結(jié)
以上是生活随笔為你收集整理的64位ubuntu 12.04编译linux内核提示mkimage command not found的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 64位ubuntu 12.04编译lin
- 下一篇: 巫师3瘾头是什么