0

C++ プロジェクトにメイクファイルを使用しています。ただし、それをCに変換しようとし、gccでコンパイルしようとすると、次のようなエラーが発生しました: make: *** No rule to make target*.o'、必要microc'. Stop.

これは私のメイクファイルです:

CC=gcc
CFLAGS=-c -std=gnu99 -Wall -pedantic
LDFLAGS=
SOURCES=*.c
OBJECTS=$(SOURCES:.c=.o)
EXECUTABLE=microc

all: $(SOURCES) $(EXECUTABLE)

$(EXECUTABLE): $(OBJECTS) 
    $(CC) $(LDFLAGS) $(OBJECTS) -o $@

.c.o:
    $(CC) $(CFLAGS) $< -o $@

clean:
    rm -rf *o microc
4

1 に答える 1

2

使用できませんSOURCES=*.c。変数を文字列に設定するだけな*.cので、OBJECTS は文字列*.oです。あなたが望む(GNU makeを使用していると仮定して):

SOURCES := $(wildcard *.c)
于 2013-04-30T13:44:20.907 に答える