Linux5 4核心編譯

2021-10-19 12:56:50 字數 2594 閱讀 5342

linux是如此美妙,如此有趣。like matrix,it』s everywhere !

windows10, vmware16, ubuntu20.04,虛擬環境。

pc機,記憶體32g,cpu 16 核心,i7八代。

進入解壓後的源**資料夾執行如下

make menuconfig
進入編譯配置,開啟下面的編譯選項

kernel hacking  --->

[*] kernel debugging

compile-time checks and compiler options --->

[*] compile the kernel with debug info

[*] provide gdb scripts for kernel debugging

執行編譯

make
$ cd busybox-1.32.0

$ make menuconfig

配置生成靜態庫

settings  --->

[*] build static binary (no shared libs)

執行編譯安裝,安裝到了_install下面

$ make

$ make

install

建立initramfs

$ mkdir initramfs

$ cd initramfs

$ cp

../_install/* -rf ./

$ mkdir dev proc sys

$ sudo

cp -a /dev/ dev/

$ rm linuxrc

$ vim init

$ chmod a+x init

$ ls

$ bin dev init proc sbin sys usr

init 檔案內容

#!/bin/busybox sh         

mount -t proc none /proc

mount -t sysfs none /sys

exec /sbin/init

打包檔案系統

$ find

. -print0 | cpio --null -ov --format=newc |

gzip -9 >

../initramfs.cpio.gz

進入busybox1.32.0目錄,啟動核心

安裝qemu

sudo

apt-get

install qemu

進入到linux-5.4.80目錄

到 window->preferences->general->workspace 中將build automatically選項去掉,

到window->preferences->c/c++ -> indexer中,將預設的fast c/c++ indexer改為no indexer。

從選單中選擇file -> new -> project… -> c/c++ -> c project 然後單擊next按鈕

在project name 一欄填入乙個工程名,比如 linux-kernel. 然後將 use default location 選項給勾掉。在location一欄填入剛才解壓的核心原始碼的路徑。project type選擇makefile project -> empty project。toolchains 選擇 linux gcc。

現在在中斷進入busybox1.32.0執行如下命令,讓核心進入除錯等待狀態

現在到eclipse中 run->debug configurations, 執行debug後

至此linux核心除錯環境已搭建完畢。工欲善其事必先利其器,有了乙個方便的除錯環境,能夠讓後面的事輕鬆義點。linux是乙個有趣的系統,乙個框架,一種思想,一種文化。從linux核心中可以學到大量先賢優秀的設計理念和思想,linux也在不斷地發展演化,從嵌入式系統到手機作業系統,桌面系統再到工作站,大型伺服器,linux無處不在。

移植Linux 5 4 核心到4412開發板

前言 itop 4412開發板被linux官方支援,所以我們在4412上學習新的核心是非常方便的,本文作者是4412精英群8群一位技術高手,接下來,我們一起來欣賞下他的表演。環境說明 os版本 交叉編譯環境配置 sudo apt install gcc arm linux gnueabihf sud...

編譯 linux 核心

一 準備工作 tpv te0 首先說明,下面帶 號的行都是要輸入的命令列,且本文提到的所有命令列都在終端裡輸入。ixpub技術部落格 rc0p a6zx j 啟動linux系統,並用根使用者登入,進入終端模式下。6i sb w,a0 ixpub技術部落格c gng,y y ixpub技術部落格 k,...

linux編譯核心

red hat linux版本的核心編譯 make j2 編譯 make modules make modules install make install cd boot mkinitramfs o initrd.img 2.6.30.10 2.6.30.10 此項可能不需要 vim boot g...