You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

repl.it环境开发拼写检查程序makefile报missing separator错误求助

Makefile missing separator 报错解决方案

报错触发原因

makefile:2: *** missing separator. Stop 是Makefile最常见的语法报错之一,触发原因是Makefile要求所有规则对应的执行命令,行首必须使用单个TAB字符缩进,不支持用多个空格替代。你贴出的Makefile中所有gcc命令的行首都是空格,完全不符合语法要求。

另外你当前的Makefile还存在一处逻辑缺陷:第一行生成a.out的依赖列表里包含spell.o,但整个Makefile没有写spell.o对应的编译规则,就算修好了缩进问题,后续编译也会报找不到目标spell.o的错误。

修复步骤

  • 关闭repl.it编辑器的「Tab自动转空格」设置,避免输入缩进时自动变成空格
  • 把所有gcc命令行首的空格全部删除,替换为1个TAB字符
  • 补全spell.o对应的编译规则,可根据你的项目实际依赖调整对应文件

修复后参考Makefile

a.out: main.o spell_lib.o spell.o
	gcc *.o

main.o: main.c spell_lib.h
	gcc -c main.c

spell_lib.o: spell_lib.h spell_lib.c
	gcc -c spell_lib.c

# 补全的spell.o编译规则,有其他依赖可自行调整
spell.o: spell.c spell_lib.h
	gcc -c spell.c

注意:上述代码中所有gcc行的行首都是单个TAB字符,复制后需要确认缩进没有被自动转换为空格。

内容的提问来源于stack exchange,提问作者AnonCham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 12:48:02