makefile

Rajat Sharma fs.rajat at gmail.com
Tue Jul 2 11:00:22 EDT 2013


On Tue, Jul 2, 2013 at 6:37 PM, David kiarie <davidkiarie4 at gmail.com> wrote:
> Hi everybody,
> I currently started learning how to write Linux drivers.I am following Linux
> Device Drivers Third Edition.
> I have everything set right but the makefile provided seem not to work.I am
> familiar with makefiles but the kernel build system confuses me
> Here is the makefile:
>
> # If KERNELRELEASE is defined, we've been invoked from the
> # kernel build system and can use its language.
> ifneq ($(KERNELRELEASE),)
> obj-m := hello.o
> # Otherwise we were called directly from the command
> # line; invoke the kernel build system.
> else
> KERNELDIR ?= /lib/modules/$(shell uname -r)/build
> PWD := $(shell pwd)
> default:
> $(MAKE) -C $(KERNELDIR) M=$(PWD) modules

Press a tab here just before $(MAKE) and remember your editor (e.g.
vim) should not have setting to convert tabs into spaces. Makefile
strictly requires a tab. You must be knowing all these already since
you are familiar with Makefiles.

> endif
> It give the following output when I run make :
>
> make: Nothing to be done for `default'.
>
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>

-Rajat



More information about the Kernelnewbies mailing list