驅動模塊編譯錯誤提示--implicit declaration of function ‘kmalloc’

從新編譯以前的一個驅動測試模塊

以前是在FC9,但是FC14出現如下編譯錯誤,

make: Entering directory `/usr/src/kernels/2.6.35.6-45.fc14.i686'
  CC [M]  /home/ty/development/driver/ch6/globalmem.o
/home/ty/development/driver/ch6/globalmem.c: In function ‘globalmem_read’:
/home/ty/development/driver/ch6/globalmem.c:77:7: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘long unsigned int’
/home/ty/development/driver/ch6/globalmem.c: In function ‘globalmem_write’:
/home/ty/development/driver/ch6/globalmem.c:100:7: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘long unsigned int’
/home/ty/development/driver/ch6/globalmem.c: In function ‘globalmem_init’:
/home/ty/development/driver/ch6/globalmem.c:185:3: error: implicit declaration of function ‘kmalloc’
/home/ty/development/driver/ch6/globalmem.c:185:18: warning: assignment makes pointer from integer without a cast
/home/ty/development/driver/ch6/globalmem.c: In function ‘globalmem_exit’:
/home/ty/development/driver/ch6/globalmem.c:202:3: error: implicit declaration of function ‘kfree’
make[1]: *** [/home/ty/development/driver/ch6/globalmem.o] Error 1
make: *** [_module_/home/ty/development/driver/ch6] Error 2
make: Leaving directory `/usr/src/kernels/2.6.35.6-45.fc14.i686'

 

在網上找了一下,是缺少了一個頭文件

#include <linux/slab.h>

加上之後就沒問題了

驅動源代碼

http://blog.csdn.net/tiany524/archive/2010/09/14/5884535.aspx

發佈了62 篇原創文章 · 獲贊 10 · 訪問量 32萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章