我一直收到这个错误:
make: *** No rule to make target `all'. Stop.
Run Code Online (Sandbox Code Playgroud)
即使我的make文件看起来像这样:
CC=gcc
CFLAGS=-c -Wall
all: build
build: inputText.o outputText.o main.o
gcc main.o inputText.o outputText.o -o main
main.o: main.c
$(CC) $(CFLAGS) main.c -o main.o
inputText.o: inputText.c
$(CC) $(CFLAGS) inputText.c -o inputText.o
outputText.o: outputText.c
$(CC) $(CFLAGS) outputText.c -o outputText.o
Run Code Online (Sandbox Code Playgroud)
是的,目标下面应该有一个标签空间,并且在我的make文件中.
我可以得到它,如果我尝试像main.o,inputText.o和outputText.o的目标之一,但不能完成构建或全部工作.
编辑:我只是随机尝试运行make并使用以下命令告诉它文件:
make -f make
Run Code Online (Sandbox Code Playgroud)
这有效,但为什么不只是键入make work?
Pau*_*l R 17
理想情况下makefile
,你的makefile应该被命名,而不是make
.请注意,您可以随意调用makefile,但正如您所发现的那样,您需要使用-f
选项make
来指定makefile的名称.使用默认名称makefile
只会让生活更轻松.
归档时间: |
|
查看次数: |
96401 次 |
最近记录: |