交叉编译生成模块的makefile写法

  以S3C6410为例,此时arm-none-linux-gnueabi-4.3.2已经安装完毕。

  首先把和板子上烧写的内核同样的内核源码放置到任意目录下,如/usr/src/s3c-linux-2.6.28.6-Real6410。(内核源码需要配置,而板子附带CD上一般是配置好的,在上面修改简单一些)

  进行make或./build。遇到了报错,找不到XX文件。查看了一下,指定目录下是有这个文件的。make clean再进行./build就行了。

  在需要编译的目标代码目录下编写makefile文件,内容如下:

CROSS_COMPILE:= arm-linux-
ARCH:= arm
CC:= $(CROSS_COMPILE)gcc
LD:= $(CROSS_COMPILE)ld
obj-m := udpcli.o 
KERNELDIR := /usr/src/s3c-linux-2.6.28.6-Real6410
PWD := $(shell pwd) 

modules: 
    $(MAKE) -C $(KERNELDIR) M=$(PWD) modules 

modules_install: 
    $(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install 

clean:
    rm -f *.o
    rm -f *.symvers
    rm -f *.order
    rm -f *.ko
    rm -f *.mod.c

你可能感兴趣的:(交叉编译生成模块的makefile写法)