用vim编辑器写的makefile出现编译报错的情况:
- Makefile: *** missing separator (did you mean TAB instead of 8 spaces?). Stop.
原因是:
makefile的命令行必须以\t开头,也就是制表符,但很多开发人员会想linux下vim的配置文件.vimrc里加上这样一句,set expandtab,这句话的意识是配置vim编辑器在按下一个tab键时,不输入\t制表符,而是转化成空格,至于转化为多少空格,默认是8个,可以自己设置另一个参数来设定的多少个空格。 所以很多用vim写了Makefile文件之后发现不成功。
所以解决办法便是将vimrc里的set expantab 删掉,便可以解决。
##用xshell5版本以上,vim编写makefile时可以看到若tab是对的 ,那么这个命令会以红色出现表示其生效,若前面是空格,此行命令依然是白色: