
编写linux内核模块,需要自己编写Makefile,同时在Makefile里面制定自己的内核路径,这样才能处理提示没有头文件错误。
编译命令:
export PATH=$PATH:#编译工具链路径export ARCH=#CPU类别(例如arm)
export CROSS_COMPILE=arm-none-linux-gnueabi-#(编译工具xx-gcc的前缀xx)
make -C #编译好的内核模块运行的Linux kernel内核源代码目录树 M=$`pwd` modules
Linux模块编译例子:
export PATH=$PATH:/usr/local/arm/4.2.2-eabi/usr/bin#for Samsung s5pc100
export ARCH=arm
export CROSS_COMPILE=arm-none-linux-gnueabi-
make -C /home/wenxy/src/s5pc100/linux-2.6.35.5 M=$`pwd` modules
-I /usr/src/linux-headers-2.6.32-24/include 其中, -I和后面的路径没有空格-I/usr/src/linux-headers-2.6.32-24/include
一般也很少直接用gcc命令, 大部分是用makefile, make -C kernel_path modules
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)