这是我的生成文件:
all:ll
LH:噢,是的
gcc-c-Wall-Werror-02 c.c ll.c-o [email protected]$<;
清洁:
\rm-fr ll
当我尝试make clean或make make时,我得到以下错误:
:makefile:4:**缺少分隔符。停止
我怎样才能修好它
make与tabs的关系非常愚蠢。每个规则的所有操作都由选项卡标识。而且,不,四个空格不构成一个标签。只有制表符才能制表
为了检查,我使用命令cat-e-t-v makefile\u name
它显示带有^I的选项卡和带有$的行结尾。这两者对于确保依赖关系正确结束至关重要,选项卡标记规则的操作,以便make实用程序能够轻松识别它们
例如:
Kaizen~/so\u test$cat-e-t-v mk.t
all:ll$##这里的$是行尾。。。
$
LH:噢,是的$
^Igcc-c-Wall-Werror-02 c.c.L.c-o [email protected]$<;$
##上面的^I表示在动作部分之前有一个选项卡,所以这一行是可以的。
$
清洁:$
\rm-fr ll$
##看这里没有^I,这意味着tab不存在。。。。
##在这种情况下,您需要再次打开文件并编辑/确保选项卡
##开始动作部分