Hi,
I have
written a simple char driver(mychar) for linux 2.6.22
kernel.
I have
split my driver code into 2 C files.
-
mychar.c (main file where __init is present)
-
test1.c (some user defined function)
I am
using Makefile for compilation.
My
makefile looks like this -
------------------------------------------------------------
EXTRA_CFLAGS += -I. -ITEST
obj-m
+= mychar.o
mychar-objs += TEST/test1.o
KDIR
:= /lib/modules/$(shell uname -r)/build
PWD :=
$(shell pwd)
all:
$(MAKE) -C $(KDIR) M=$(PWD)
modules
clean:
$(MAKE) -C $(KDIR) M=$(PWD)
clean
---------------------------------------------------------------
I am
interested in building only mychar.ko and no the whole
kernel.
I am
doing my development on Ubuntu 7.10 with kernel version
2.6.22-14-generic
Although this Makefile works and I could able to
generate "mychar.ko". Also when I do "insmod mychar.ko" the module installs
successfully, and I could
see
"mychar" in "lsmod" output.
I have
added some printk in my module_init function but after doing insmod I am not
able to see any output in /var/log/messages
If I
put everything in single C file(only mychar.c), I could able to see all the
output in /var/log/messages.
Please
let me know what am I doing wrong while including the 2 C files and how should
the makefile be modified.
( I have referred Documentation/kbuild
makefiles.txt for creating my makefile)
Thanks, Regards
Pintu
SASKEN BUSINESS DISCLAIMER ------------------------- This message may contain confidential, proprietary or legally privileged information. In case you are not the original intended Recipient of the message, you must not, directly or indirectly, use, Disclose, distribute, print, or copy any part of this message and you are requested to delete it and inform the sender. Any views expressed in this message are those of the individual sender unless otherwise stated. Nothing contained in this message shall be construed as an offer or acceptance of any offer by Sasken Communication Technologies Limited ("Sasken") unless sent with that express intent and with due authority of Sasken. Sasken has taken enough precautions to prevent the spread of viruses. However the company accepts no liability for any damage caused by any virus transmitted by this email