Makefile:26: *** missing separator. Stop.
1. Makefile:26: *** missing separator. Stop.
strong@foreverstrong:~/Desktop/makefile_work$ make DEFINE_VAR=true OPT=define
Makefile:26: *** missing separator. Stop.
strong@foreverstrong:~/Desktop/makefile_work$
2. cat Makefile 无法发现异常
strong@foreverstrong:~/Desktop/makefile_work$ ll
total 12
drwxrwxr-x 2 strong strong 4096 Mar 8 11:14 ./
drwxr-xr-x 8 strong strong 4096 Mar 8 09:51 ../
-rw-rw-r-- 1 strong strong 568 Mar 8 11:14 Makefile
strong@foreverstrong:~/Desktop/makefile_work$
strong@foreverstrong:~/Desktop/makefile_work$ cat Makefile
# ============================================================================
# Name : Makefile
# Author : Yongqiang Cheng
# Version : Feb 16, 2019
# Copyright : Copyright 2019 ForeverStrong License
# Description : Workspace in C, Ansi-style
# ============================================================================
ifdef DEFINE_VAR
VAR = "!!!Hello World!!!"
endif
ifeq ($(OPT), define)
VAR ?= "!FIRST!"
endif
ifeq ($(OPT), add)
VAR += "!SECOND!"
endif
ifeq ($(OPT), recover)
VAR := "!THIRD!"
endif
all :
@echo $(VAR)
strong@foreverstrong:~/Desktop/makefile_work$
3. vim 编辑 Makefile 文件发现异常
4. 修正错误
Makefile 文件中,命令行以 tab 键开头,避免使用 空格+空格+空格+空格。
5. make DEFINE_VAR=true OPT=define
strong@foreverstrong:~/Desktop/makefile_work$ make DEFINE_VAR=true OPT=define
!!!Hello World!!!
strong@foreverstrong:~/Desktop/makefile_work$
References
[1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/