自己在做嵌入式驱动时,编写makefile文件是犯的错及解决办法

问题1:makefile 3 missing separator.stop;

问题2:Nothing to be done for 'build'

解决:

在makefile文件里不要乱用TAB,只有命令所在的行才能且只能以TAB开头!(TAB不能用多个空格代替哈)

其他的如,make变量的定义、赋值,make内定函数如$(error "strings")都不能以TAB开头,不然make会将其作为命令来处理!

我就是因为用了空格,没用tab才导致上述两种错误的。

查阅网上资料:

问题1,还有可能是编码方式引起。这个原因不多见,不容易发现。查看/etc/vimrc文件以及~/.vimrc,查看是否有set fileencodings的选项,是否设定了utf-8。没有的话加上。

问题2,还有可能是编译的文件没有改动,重复编译导致。

问题3;

因为编译器版本原因

我是在Ubuntu上编译arm上运行的驱动,得指定交叉编译工具

# Kernel modules
obj-m += EMIF_linux.o build: kernel_modules kernel_modules:
make -C /home/gaoxingpeng/dm365/dvsdk_dm365_4_02_00_06/psp/linux-2.6.32.17-psp03.01.01. M=$(CURDIR) modules ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- clean:
make -C /lib/modules/$(KVERS)/build M=$(CURDIR) clean

注意:编译器后面“-”,还有“gcc”没写,它会自己添加,如果你写完整了,它仍然添加并报错。

参考:https://blog.csdn.net/limanjihe/article/details/52231243

最新文章

  1. python 之 logging
  2. PLSQLDeveloper 常用设置
  3. MySQL SQL中的安全问题
  4. Map集合 总结
  5. OpenCV实现KNN算法
  6. iOS开发UI篇——简单的浏览器查看程序
  7. FileReader
  8. uIP中国的协议文件:Ch01
  9. window.getSelection和document.selection
  10. 分享:docker swarm集群搭建
  11. Python源码中的PyCodeObject
  12. 类装载器-ClassLoader
  13. [转]Mariadb的root密码忘记后的解决方法
  14. Jenkins-Linux环境搭建
  15. javaweb 读取properties配置文件参数
  16. 【2017-11-19】Linux基础知识:TP-Link WN823N无线网卡(RTL8192EU芯片)的X86-64及AARCH64驱动安装
  17. 监控MySQL服务器主从同步异常的脚本,出现异常,报警
  18. java 生成验证Guid码
  19. selenium测试 - open Firefox
  20. OpenCV求取轮廓线

热门文章

  1. linux命令用来查看日志关键字
  2. HDU 2027 汉字统计
  3. POJ1837 Balance 背包
  4. Working with macro signatures
  5. javascript设计模式-单体模式
  6. Linux Shell Scripting Cookbook 读书笔记 6
  7. wolf
  8. C#控制台显示进度条
  9. mysql5.7 设置密码
  10. 全面改造升级内部OA系统