首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在成功的构建中获得“无规则做目标”

在成功的构建中获得“无规则做目标”
EN

Stack Overflow用户
提问于 2014-02-09 14:46:27
回答 2查看 699关注 0票数 0

我在建设这个项目时遇到了一个奇怪的错误。它成功地编译了所有的东西,但最后,make告诉我:

代码语言:javascript
复制
make: *** No rule to make target `cc', needed by `game'.  Stop.

下面是makefile:

代码语言:javascript
复制
TARGET = game
SDL_INC_DIR = /usr/include/SDL
SDL_LIB_DIR = /usr/lib/SDL

CFLAGS = -D __SDL__ -O2 -g -Wall -I$(SDL_INC_DIR)
LDFLAGS = -L$(SDL_LIB_DIR) -lSDL

OBJECTS = game/ai/boost.o \
        game/ai/bullet.o \
        game/ai/death.o \
        game/ai/explode.o \
        game/ai/pickup.o \
        game/ai/quad.o \
        game/ai/sheba.o \
        game/ai/static_model.o \
        game/ai/static_sprite.o \
        game/ai/teleporter.o \
        game/ai/torch.o \
        game/data.o \
        game/entities.o \
        game/game.o \
        game/maps.o \
        game/models.o \
        game/screens.o \
        game/sprites.o \
        platform/main.o

$(TARGET): $(OBJECTS) $(CC) $(CFLAGS) $(LDFLAGS) -o $(TARGET) $(OBJECTS)

clean:
    rm -f *.o game/*.o game/ai/*.o
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-09 14:50:41

您需要将$(CC)和其余的放在下一行,在选项卡之后:

代码语言:javascript
复制
$(TARGET): $(OBJECTS)
        $(CC) $(CFLAGS) $(LDFLAGS) -o $(TARGET) $(OBJECTS)

无论如何,它都能够使用默认规则成功地编译目标。

票数 3
EN

Stack Overflow用户

发布于 2014-02-09 14:54:48

未定义$(CC)。添加$(CC)=gcc还将其放在一个新行上,否则它将把它们作为依赖项

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21660505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档