天天看點

編譯并運作Linux核心0、環境1、編譯核心2、建立根檔案系統3、安裝qemu并執行4、參考

目錄

0、環境

1、編譯核心

2、建立根檔案系統

3、安裝qemu并執行

4、參考

0、環境

        系統:Linux Mint 19.1 Tessa 

        核心版本:4.15.0-96-generic(該版本是筆者開發機的版本,不是要編譯的版本)

        虛拟機:qemu 2.11.1

        平台:x86_64

        根檔案系統:buildroot-2021.02.3 建立

        編譯過程中的依賴等自行安裝。

1、編譯核心

        在https://mirrors.edge.kernel.org/pub/linux/kernel/上選擇要編譯的核心,這些筆者選擇5.9.8,

編譯并運作Linux核心0、環境1、編譯核心2、建立根檔案系統3、安裝qemu并執行4、參考

       下載下傳後解壓,進入源碼目錄,可以使用make menuconfig對參數進行修改,這裡直接使用make -j4指令編譯。(1、編譯時間會比較長; 2、編譯核心需要提前安裝一些依賴庫,在編譯時提示缺少什麼就安裝什麼即可)

       編譯結果:arch/x86_64/boot/bzImage 即為要運作的核心

2、建立根檔案系統

        在https://buildroot.org/上下載下傳buildroot工具,源碼解壓。

        在源碼目錄執行make menuconfig,進行如下修改:

                (1)Target Options->Target Architecture選擇x86_64.

                (2)Filesystem images勾選ext2/3/4 root file system. (按空格勾選)

        然後執行make指令編譯,執行過程也很長。(好像不能使用make -jx指令)

        編譯結果:output/images/rootfs.ext2

3、安裝qemu并執行

        安裝qemu的過程略去,無非sudo apt-get ....

        執行:qemu-system-x86_64 -kernel arch/x86_64/boot/bzImage -boot c -m 2049M -hda rootfs.ext2 -append "root=/dev/sda rw" ,加紅部分填寫自己的路徑。

        運作結果:

編譯并運作Linux核心0、環境1、編譯核心2、建立根檔案系統3、安裝qemu并執行4、參考

4、參考

        https://www.bilibili.com/read/cv11271232

        https://medium.com/@daeseok.youn/prepare-the-environment-for-developing-linux-kernel-with-qemu-c55e37ba8ade

繼續閱讀