关闭

make -C $(kdir) M=$(pwd) modules

219人阅读 评论(0) 收藏 举报
分类:

1.对M浅解

make -C $(kdir) M=$(pwd) modules这个指令中,其中的M是在/kernel/Makefile下的提到过:

  75 ifeq ("$(origin M)", "command line")  #如果变量在命令行中定义,就把M赋值KBUILD_EXTEOD.
  76   KBUILD_EXTMOD := $(M)
  77 endif

总而言之M指定的是当前模块的地址.而M是Makefile的一个环境变量.


2.对modules的解释

对于指令后面的modules 则很少人会去解释.

 其实在指令中module表明的意思是把驱动编译成模块,

好像整条指令省去这个modules也可以,即效果一样,

我没试过,所以只能说好像,因为规则会自动的默认编译成模块.

0
0
查看评论

make -C $(KDIR) M=$(shellpwd) modules

该命令是make modules命令的扩展,-C选项的作用是指将当前的工作目录转移到制定的 目录,即(KDIR)目录,程序到(shellpwd)当前目录查找模块源码,将其编译,生成.ko文件。
  • u012351051
  • u012351051
  • 2015-11-23 15:54
  • 2203

对linux编译模块make -C path_to_kernel_src M=`pwd` modules的理解

这篇文章侧重点在M=`pwd`的个人理解,不足之处希望大神斧正,谢谢。     一直以为M=`pwd`是make的参数,可是这个参数也写的够简单。最近重看时,发现常有这样的makefile内容 # Use 'make V=1' to see the full ...
  • lixiangminghate
  • lixiangminghate
  • 2015-10-23 00:26
  • 1310

makefile模块编译模板

Makefile模板为: ifneq ($(KERNELRELEASE),) obj-m := memdev.o else KDIR := /home/study/4-3-1/linux-2.6.29 all:    ...
  • u010245383
  • u010245383
  • 2014-06-03 11:45
  • 514

make -C $(LINUX_KERNEL_PATH) M=$(PWD) modules中的M选项

新的内核模块编程中的make命令里有个M选项,如下:  make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules M=$(PWD) 意思是返回到当前目录继续读入、执行当前的Makefile。  请参考: 从...
  • bytxl
  • bytxl
  • 2015-07-16 10:16
  • 1877

make -C $(KDIR) M=$(PWD) modules

make -C $(KDIR) M=$(PWD) modules //执行的命令,该命令是make modules命令的扩展,-C选项的作用是指将当前的工作目录转移到指定的目录,即(KDIR)目录,程序到(pwd)当前目录查找模块源码,将其编译,生成.ko文件。
  • qq_32146369
  • qq_32146369
  • 2017-11-25 10:27
  • 114

linux驱动编译时make -C M= 解释

Makefile为, PWD = $(shell pwd) KERNEL_SRC = /usr/src/linux-source-2.6.15/   obj-m := test.o module-objs := test.o   all:    ...
  • luopeiyuan1990
  • luopeiyuan1990
  • 2013-04-06 16:28
  • 2546

make modules

1.make modules error:Building modules, stage 2. MODPOST 0 modules --Makefile   obj -m should be obj-m
  • humanof
  • humanof
  • 2014-04-13 22:44
  • 3419

写内核模块Makefile的技巧

写内核模块Makefile的技巧hansel@163.com2007.11.07   Linux 2.6的内核使用Kbuild来编译内核模块。Kbuild能够编译内核树目录内的内核模块,也能够编译内核树目录外的内核模块(外部内核模块)。.编译外部内核模块的命令: ...
  • hansel
  • hansel
  • 2007-11-07 19:02
  • 3485

dell M4800 安装centos 7系统的无线驱动

https://www.zhihu.com/question/50518514 http://blog.csdn.net/qq_30949367/article/details/50887135 03:00.0 Network controller: Broadcom Corporation...
  • zzh_my
  • zzh_my
  • 2016-11-15 13:13
  • 956

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

在FL2440资料的LED驱动编程的编译makefile里面看到这样一句话,-C是表示进入$(KERNELDIR)目录执行makefile,而M不是makefile的选项,是内核根目录下的Makefile中使用的变量。 # Use make M=dir to specify direc...
  • u013478557
  • u013478557
  • 2015-06-09 11:15
  • 283
    个人资料
    • 访问:2883次
    • 积分:49
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档