sumner007 发表于 2005-3-24 12:05:38

MagicLinux1.2下的设备驱动模块加载

os:MagicLinux1.2final

本人菜鸟
最近在学添加设备驱动程序

一开始写完了dev.c之后用以前的方法gcc编译
生成dev.o文件,insmod的时候提示.o文件不是有效的模块格式
后来发现原来2.6内核的编译方法和2.4的不一样
要用makefile文件,用系统自带的Kbuild编译

于是写Makefile文件
但是在make的时候又报错:
# make
make -C /lib/modules/2.6.9/build SUBDIRS=/root/driver modules
make: *** /lib/modules/2.6.9/build: 没有那个文件或目录。 停止。
make: *** 错误 2


但是同样的源代码和makefile文件在同学的fc3 (也是2.6内核)上就没有问题

我看了一下/lib/modules/2.6.9/build,是一个链接文件,指向/usr/src/mBuild/BUILD/kerne-2.6.9/linux-2.6.9
但是/usr/src/mBuild/BUILD下面空白,没有任何文件。。。。。

难道是ML1.2没有Kbuild?
还是放在别的地方了?
如果没有的话怎样安装?

请各位大虾之指点一下
顺便,如果有比较好点的相关资料也推荐一下(最好是中文的,E文 的看的比较累)


附makefile文件的代码:
ifneq ($(KERNELRELEASE),)
obj-m   := Drive.o

else
KDIR    := /lib/modules/$(shell uname -r)/build
PWD   := $(shell pwd)

default:
      $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
endif
页: [1]
查看完整版本: MagicLinux1.2下的设备驱动模块加载