#kernel build system and can use its lanauge ifneq($(KERNELRELEASE),) obj-m:=helloworld.o else KDIR:= /lib/modules/2.6.33.3-85.fc13.i686/build all: make -C $(KDIR) M=$(PWD) modules clean: rm -f *.ko *.o *.mod.o *.mod.c *.symvers endif
错误是:
makefile:2:***缺less分隔符。 停止
但对于ifneq($(KERNELRELEASE),) ,如果我添加一个选项卡之前,我得到另一个错误:
makefile:2:***命令在第一个目标之前开始。 停止
写入文件和映射的内存有什么区别?
如何在terminal重写输出
如何为所有用户制作GNU-Screen共享1屏幕?
Bash脚本执行多个命令
modprobe:错误:无法插入'tun':模块中的未知符号或未知参数(请参阅dmesg)
无法安装mono-gmcs软件包
Ruby – 以跨平台的方式从串口获取USB VID / PID
相当于Linux上的GetTickCount()
用EOF结束循环(不input)
ifneq和(之间必须有空格。
TAB前缀表示它是一个shell命令,因此请确保shell命令( make和rm )以TAB开头,而其他所有行(如ifneq不以TAB开头。
Make抱怨第二行不是以tab开头的。 您的IDE /文本编辑器可能会使用空格等同于制表符保存文件。 可以将IDE配置为使用制表符,也可以使用简单的编辑器(如vim或nano),并使用制表符替换第二行上的前导空格。
在obj-m:和KDIR:之前检查KDIR:等等。你的制表符被插入为空格吗?
你错过了你的条件ifneq($(KERNELRELEASE))的第二部分,)需要在逗号后面有一些东西,比如“2.6.17”(例如)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。