驅動模組編譯的標頭檔案 kernel devel

2021-09-20 23:59:03 字數 641 閱讀 9705

內容:

kernel-devel:提供c header 檔案,它還有核心的配置檔案,以及其他的開發用的資料

kernek-source:包含源**和標頭檔案

涵蓋:kernel-devel是用做核心一般開發的,比如編寫核心模組,原則上,可以不需要核心的原**。

kernel則是專指核心本身的開發,因此需要核心的原**。

區別:kernel-devel包只包含用於核心開發環境所需的核心標頭檔案以及makefile,而kernel-souce包含所有核心源**。

如果僅僅是用於你自己編寫的模組開發的話,因為只需引用相應的核心標頭檔案,所以只有devel包即可,

如果你要修改現有的核心源**並重新編譯,那必須是kernel-souce。

kernel-souce在rh某些版本之後不再附帶在發行版中了,必須自己通過kernel-***.src.rpm做出來。

用途:如果某個程式需要核心提供的一些功能,它就需要核心的 c header 來編譯程式,這個時候 linux-devel 裡面的東西就用上了。

比如 nvidia 和 ati 的官方顯示卡驅動,realtek的網絡卡驅動,alsa-driver 音效卡驅動,他們都需要編譯乙個放在核心裡面執行的模組,

編譯這個模組就需要核心的 header 檔案才能順利編譯。

編譯Linux驅動模組

xz d linux 5.7.8.tar.xz tar xf linux 5.7.8.tar cd linux 5.7.8 make menuconfig 執行make menuconfig 報錯 error 1 unable to find the ncurses package.install ...

驅動模組編譯Makefile

驅動模組編譯makefile如下 1 使用不同的開發板核心時,一定要修改kern dir 2 kern dir中的核心要事先配置 編譯,為了能編譯核心,要先設定下列環境變數 2.1 arch,比如 export arch arm64 2.2 cross compile,比如 export cross...

linux驅動標頭檔案位置和標頭檔案的說明

在不同版本的核心原始碼上,標頭檔案所在的位置是不同的,比如說在 include include 同樣是regs gpio.h,是在比較低的版本 比如2.6.25 上位於arch arm include asm中,而mach regs gpio.h則是位於arch arm mach s3c2410 i...