google HTML5 C 解析库 Gumbo 用 autogen.sh 生成 configure 文件来编译需要比较多的 依赖文件 。 编译起来比较麻烦。
可以通过自己编写 Makefile 文件来直接生成 动态库
GEN_SRC=$(wordcard *.c)
GEN_OBJ=$(patsubst %.c,%.o,$(GEN_SRC))
CC = gcc -std=C99
H_OBJ = gumbo.h
SHARED = -shared -o
FPIC = -fPIC -c
LIB_OBJECT = libgumbo.so
PREFIX = /usr/shared/gumbo
.PHONY: all
all $(LIB_OBJECT) $(GEN_OBJ)
$(LIB_OBJECT):$(GEN_OBJ)
$(CC) $(GEN_OBJ) $(SHARED) -fPIC -o $(LIB_OBJECT)
$(GEN_OBJ):$(GEN_SRC) $(H_OBJ)
$(CC) $(FPIC) $(SRC_OBJECT)
clean:
rm *.o *.so -f
install:
mkdir $(PREFIX)/include $(PREFIX)/lib
cp $(H_OBJ) $(PREFIX)/include
cp $(LIB_OBJECT) $(PREFIX)/lib