设备驱动。制作文件,外部模块

时间:2013-10-30 06:39:36

标签: linux sdk makefile cross-compiling linux-toolchain

我正在尝试在我的intel x86主机上为ARM体系结构交叉编译helloworld内核(2.6.x)模块。

ARM的工具链位于:/home/vivek/ti-sdk-am335x-evm-05.07.00.00/linux-devkit/bin

内核源位于:/home/vivek/Arago

hellow.cMakefile位于/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'.

我做错了什么?

1 个答案:

答案 0 :(得分:0)

Makefile中有错误。由于您的源代码名称为hellow.c,但在您的Makefile中为Hello.o

所以将您的obj-m =Hello.o更改为obj-m =hellow.o

上面提到的另外一件事Etan Reisner确保你using Tab for command in Makefile