溫馨提示×

Ubuntu下make命令的靜態(tài)庫和動態(tài)庫構(gòu)建方法有哪些

小樊
137
2024-08-11 01:31:37

在Ubuntu下使用make命令構(gòu)建靜態(tài)庫和動態(tài)庫的方法如下:

  1. 靜態(tài)庫構(gòu)建方法: 首先需要編寫一個Makefile文件,其中包含編譯靜態(tài)庫的規(guī)則。靜態(tài)庫的文件擴(kuò)展名通常為.a。以下是一個簡單的Makefile示例:
CC = gcc
AR = ar
LIB = libexample.a
SRC = example.c
OBJ = $(SRC:.c=.o)

all: $(LIB)

$(LIB): $(OBJ)
	$(AR) rcs $@ $^

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

clean:
	rm -f $(LIB) $(OBJ)

然后在終端中執(zhí)行make命令,即可生成靜態(tài)庫文件libexample.a。

  1. 動態(tài)庫構(gòu)建方法: 動態(tài)庫的文件擴(kuò)展名通常為.so。以下是一個簡單的Makefile示例:
CC = gcc
LIB = libexample.so
SRC = example.c
OBJ = $(SRC:.c=.o)

all: $(LIB)

$(LIB): $(OBJ)
	$(CC) -shared -o $@ $^

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

clean:
	rm -f $(LIB) $(OBJ)

然后在終端中執(zhí)行make命令,即可生成動態(tài)庫文件libexample.so。

0