编译动态库,静态库makefile简单模板

来源:互联网 发布:gui config.json下载 编辑:程序博客网 时间:2024/06/05 11:40
#编译静态库
AR=ar
TARGET=xx.a
obj= a.o b.o ....


all:$(obj)
$(AR) ruc $(TARGET) $^


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


#调用静态库
TARGET=targetName
CC=gcc
MKLIB=/xx/yy/xx.a
obj= a.o b.o ...

all:$(obj) $(MKLIB)
$(CC) $^ -o $(TARGET)


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


动态库编译
TARGET=lib_xx.so
CC=gcc
obj= a.o b.o ...
all:$(obj)
$(CC) -share -fPIC -o $(TARGET) $^

%.o:%.c
$(CC) -fpic -c $< $@

动态库调用
TARGET=targetName
CC=gcc
MKLIB=-L/xx/yy -l_xx
obj= a.o b.o ...

all:$(obj) 
$(CC) $(MKLIB) $^ -o $(TARGET)

%.o:%.c

$(CC) $(MKLIB) -c $< $@


调用动态库时如果提示找不到,可以把动态库路径添加到环境变量LD_LIBRARY_PATH或者系统的/lib/ 或/usr/lib等已知路径

0 0
原创粉丝点击