所以我一直在努力学习更多关于使用Linux设备驱动程序版本3开发Linux驱动程序的知识。使用备用Rasberry Pi(b)我已经开始了。
我使用http://www.raspberrypi.org/documentation/linux/kernel/building.md在〜/ kernelWork / kernel文件夹中构建内核。我还编译了内核并让它在我的raspberry pi上运行以避免兼容性问题。
我遇到的问题是我知道我需要交叉编译模块源以使用ARM体系结构,但我不确定在哪里指向命令的-C标志
make -C ~/kernel-2.6 M=`pwd` modules
命令使我的模块。我查看了我的内核的arch文件夹,查看了那里包含的ARM目录,但从那里我不知道该去哪里。
所以简而言之,在构建了我的内核后,我指向-C标志以交叉编译我的模块。
答案 0 :(得分:3)
我必须将我的Makefile设置为使用设置交叉编译
all:
make ARCH=arm CROSS_COMPILE=${CCPREFIX} -C /home/jacob/kernelWork/kernel M=$(PWD) modules
clean:
make -C /home/jacob/kernelWork/kernel M=$(PWD) clean
除了将我的环境变量KERNEL_SRC和CCPREFIX设置为我的内核源代码,以及我从git源代码中提取的覆盆子编译器。此页面包含完整的详细信息
http://bchavez.bitarmory.com/archive/2013/01/16/compiling-kernel-modules-for-raspberry-pi.aspx