使用linux g++编译器在makefile中创建静态库



我有一些简单的文件:你好,你好.cpp

我创建了一个makefile来生成一个静态库(libhello.a)但我收到错误信息,我做错了什么?

我的代码是:

CC = g++
CFLAGS = -Wall -g
utilObjs = hello.o
libhello.a: $(utilObjs)
    ar rc $@ $(utilObjs)
    ranlib $@
hello: hello.o libhello.a
    $(CC) $(CFLAGS) hello.o -L ./ -lutil -o $@
hello.o: hello.cpp hello.h
    $(CC) $(CFLAGS) -c $>
clean:
    rm -rf *.o libhello.a hello
all: hello 
.PHONY: all clean

错误消息:g++:致命错误:没有输入文件编译终止

我不认为$>有什么特别的意思,把它改为$<,它扩展到规则的第一个先决条件。(在这种情况下为hello.cpp)

最新更新