Makefile
Code:
obj−m += hello1.o all: make −C /lib/modules/$(shell `uname −r`)/build M=$(PWD) modules clean: make −C /lib/modules/$(shell `uname −r`)/build M=$(PWD) clean |
Moral of the story: don’t blindly copy and paste from pdf files
Notice that in the first the argument to uname contains the unicode MINUS SIGN (codepoint U+2212), and in the second it is the ASCII/Unicode HYPHEN-MINUS (codepoint U+002D). The same thing happened to all the hyphens in your Makefile (I see five of them). Additionally, there should be a tab instead of 8 spaces.
the make utility uses tabs to interpret the commands for a target.