CC = gcc
CFLAGS = -std=c99 -Werror
VPATH = ./src:./include
.MAIN: libstring.so
.PHONY: clean
libstring.o: libstring.c libstring.h
$(CC) $(CFLAGS) -c $< -I ./include -o $@
libstring.so: libstring.o
$(CC) -fPIC -shared $< -o $@
clean:
rm -rf ./*.o ./*.so
在上面的代码片段中,我对是否<
正确使用自动变量特别感兴趣。如果源/先决条件是 ac 源文件,则此方法有效,但对于目标文件似乎失败。
编译时,我收到错误:
gcc -fPIC -shared -o libstring.so
gcc: No input files specified