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

Makefile报missing separator错误:client编译指令批量执行失败但单独运行正常

解决Makefile中"missing separator"报错的问题

这个报错的核心原因是Makefile要求目标对应的命令行必须以Tab键开头缩进,你当前的client目标下的编译指令用了空格缩进而非Tab,导致make无法识别命令的分隔符,进而报错。

虽然这行指令在终端单独运行正常,但Makefile的语法规则对缩进有严格要求——只能用Tab,不能用空格(哪怕是多个空格也不行)。

修正步骤

  • 打开你的Makefile,找到client目标下的编译行,删除开头所有空格,替换成一个Tab键
  • 同时检查其他目标(比如terminal)下的命令行,确保也都是用Tab缩进,避免后续出现同样问题

修正后的完整Makefile示例

CC = gcc

UTILS = utils/*.c
ENTRY = main.c
TARGET = bin/main.exe

CLIENT_ENTRY = server/client.c
CLIENT_TARGET = bin/client.exe

SERVER_ENTRY = server/server.c
SERVER_TARGET = bin/server.exe


terminal: 
	$(CC) $(UTILS) $(ENTRY) -o $(TARGET) -lreadline


client:
	$(CC) $(CLIENT_ENTRY) -o $(CLIENT_TARGET)



all: terminal client

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 11:01:15