我正试图在我的英特尔x86主机上交叉编译一个用于ARM架构的helloworld内核(2.6.x)模块。
ARM的工具链位于:/home/vivek/ti-sdk-am335x-evm-05.07.00.00/linux-devkit/bin
内核源代码位于:/home/vivek/Arago
hellow.c和Makefile位于/home/vivek/Desktop/hellodriver的桌面上
我已经给出了交叉编译的路径为/home/vivek/ti-sdk-am335x-evm-05.07.00.00/linux-devkit/bin
我的Makefile如下:
export ARCH=arm
export CROSS_COMPILE=arm-arago-linux-gnueabi-
obj-m =Hello.o
KDIR =/home/vivek/Arago
PWD = $(shell pwd)
default:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) clean在执行make时,我得到了
vivek@ubuntu:~/Desktop/hellodriver$ make
make: Nothing to be done for `default'.我做错了什么?
发布于 2013-11-05 17:07:22
你的Makefile中有错误。因为您的源代码名是hellow.c,但在Makefile中是它的Hello.o。
因此将您的obj-m =Hello.o更改为obj-m =hellow.o
上面Etan Reisner还说了一件事,要确保你是using Tab for command in Makefile。
https://stackoverflow.com/questions/19675476
复制相似问题