版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/windsnow1/article/details/88079953
在嵌入式Linux开发过程中,我们经常使用交叉工具链编译嵌入式平台的程序。最近在学习树莓派驱动程序的开发,用到树莓派官方在github上提供的交叉编译工具链:https://github.com/raspberrypi/tools 。使用这个交叉工具链我们可以在第三方平台上(我使用的PC虚拟机里的Ubuntu环境)编译树莓派的驱动程序,然后将编译好的模块移植到嵌入式平台上即可。
我们使用交叉工具链的过程中,需要对程序进行Makefile文件的编写,下面是我对树莓派驱动程序Makefile编写的一个小模板:
ifneq ($(KERNELRELEASE),)
obj-m := hello.o
else
KDIR := /home/dr/raspberry_src/linux-rpi-4.14.y #树莓派内核源码目录
all:
make -C $(KDIR) M=$(PWD) modules ARCH=arm CROSS_COMPILE=/home/dr/raspberry_src/tools-master/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
#交叉编译工具的路径
clean:
rm -f *.ko *.o *.mod.o *.mod.c *.symvers modul*
endif