From mboxrd@z Thu Jan 1 00:00:00 1970 From: gmate.amit@gmail.com (amit mehta) Date: Thu, 16 Jun 2011 08:57:32 +0530 Subject: kernel module spanning multiple files In-Reply-To: References: Message-ID: To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org Dave, Sunny thank you. it worked :) On Wed, Jun 15, 2011 at 11:24 PM, Dave Hylands wrote: > Hi Prashat, > > On Wed, Jun 15, 2011 at 10:29 AM, Prashant Shah wrote: >> Hi amit, >> >> On Wed, Jun 15, 2011 at 3:29 PM, amit mehta wrote: >>> Hi, >>> >>> static int __init hello_init(void) >>> { >>> ? ? ? ?printk(KERN_WARNING "Hello world\n"); >>> ? ? ? ?foo(); //defined in anther file >> >> I removed the foo(); call >> >>> [root at localhost #] cat Makefile >>> obj-m += hello_multi.o >>> hello_multi-objs := helper.o >> >> I removed the "hello_multi-objs := helper.o" line > > The hello_multi-objs is supposed to contain all of the objects. > > So you need: > > hello_multi-objs := object1.o object2.o > > Since the kernel build system will create hello_multi.o as a result of > building the multi object, you can't use a source file named > hello-multi.c. > > You could do > > hello_multi-objs := hello.o helper.o > > and rename your hello_multi.c to be hello.c > > -- > Dave Hylands > Shuswap, BC, Canada > http://www.davehylands.com >