makefile如下:
obj-m := hello_drv.o
kernel_dir := /lib/modules/$(shell uname -r)/build
pwd := $(shell pwd)
all:
make -c $(kernel_dir) subdirs=$(pwd) modules
clean:
rm *.o *.ko *.mod.c
.phony:clean
注意事項:
1. make前面要用tab而不是空格
2. subdirs=$(pwd) 的等號前後不要有空格
3. makefile檔名儲存時確保首字母大寫,否則編譯時會報錯說找不到makefile
linux核心可載入模組的makefile
在開發linux核心驅動時,免不了要接觸到makefile的編寫和修改,儘管網上的makefile模板一大堆,做一些簡單的修改就能用到自己的專案上,但是,對於這些基礎的東西,更應該做到知其然並知其所以然。本篇文章中只討論linux核心模組編譯的makefile,linux核心makefile總覽可以...
Linux核心開發 最簡單的Makefile
最簡單的linux驅動程式 至少需要乙個makefile,乙份源 本文簡單解釋makefile中的各個make target的意義。這裡只是介紹乙個簡單的基礎的makefile,生產環境需要更好的makefile模板和構建工具。示例 obj m helloword.o pwd shell pwd k...
Linux下C語言程式設計基礎 Makefile
假設我們有下面這樣的乙個程式,源 如下 main.c include mytool1.h include mytool2.h int main int argc,char argv mytool1.h ifndef mytool 1 h define mytool 1 h void mytool1 ...