makefile missing separator. Stop.问题
背景
近日在学习openharmony ArtTS字节码编译makefile文件时,写了个demo,运行遇到了如下问题。
root@DESKTOP-R500S71:/mnt/d/work/code/c++/myc++/add_log_static_demo# make run_add_log
Makefile:31: *** missing separator. Stop.
问题分析
经过网络搜索,找到一篇文章介绍了可能引起的原因,经过检查,确认有一条规则改变了:makefile的命令行,开头必须用tab键。
我打开makefile的工具是vscode。vscode打开文件默认设置将tab替代为空格。这样就将makefile中的tab改变为空格了。因此makefile的指令不能运行了。
解决方法
- 取消vscode默认打开文件时将tab键转换为空格
- 用记事本打开makefile修改保存
结论
makefile的命令行,开头必须用tab键
makefile特别约定,请无修改。