makefile 链接静态库
时间: 2023-09-22 22:09:23 浏览: 128
静态链接库
5星 · 资源好评率100%
在 Makefile 中链接静态库的方法通常有两种:
第一种方法是在链接时直接指定静态库的路径和名称,例如:
```
target: main.o libstatic.a
gcc -o target main.o -L. -lstatic
```
其中,`-L.` 表示链接器需要在当前目录中查找静态库,`-lstatic` 表示链接器需要链接名为 `libstatic.a` 的静态库。
第二种方法是将链接静态库的命令写成一个变量,然后在编译目标文件时使用这个变量,例如:
```
CC=gcc
LIBS=-L. -lstatic
target: main.o
$(CC) -o target main.o $(LIBS)
main.o: main.c
$(CC) -c main.c
```
其中,`LIBS` 变量存储了链接静态库的命令,编译目标文件时使用该变量即可。
需要注意的是,如果静态库的名称不是 `libxxx.a` 的形式,需要在链接时指定完整的静态库名称。例如,如果静态库的名称是 `mystaticlib.a`,则链接时需要使用 `-lmystaticlib`。
阅读全文