文章目录
目录
前言
在上一篇博客中,已经解释动静态库的概念
在上一篇博客中已经创建了一个静态库,并且使用了一下静态库。
库搜索路径
从左到右搜索-L指定的目录。
由环境变量指定的目录 (LIBRARY_PATH)
由系统指定的目录
/usr/lib
/usr/local/lib
/lib64/
1、第三方库,在往后使用时,必须要用gcc -l 来指定文件名;
2、深度理解errno本质;
3、查看动静态库链接
ldd a.out
4、gcc 默认是动态库链接,如果没有动态库,只能用静态库链接;
5、如果需要链接多个库,gcc可以链接多个库;
6、当我们把头文件加载到了系统文件当中,就不用再指明路径了。但是需要加-l指明文件名;
7、软硬链接 ln -s 目标路径
一、静态库使用
静态库使用方法:
1、指令 gcc main.c -I 指定头文件路径 -L 指定方法路径 -l方法文件名
这个方法在上篇博客已经介绍过了。
2、将目标路径加载到系统文件加当中,也就是将静态库mv或者cp当系统文件当中;
将头文件拷贝到/usr/include当中
将静态库拷贝到/lib64/
3、添加软链接,将目标文件软链接到系统文件当中。
为什么还是报错呢?因为我们main函数中包含的是没有math.h这个文件,而我们链接文件名为myinc,main函数中也就需要更改;
以上就是静态库的所有用法
二、动态库
1.创建动态库
创建mylog.c mylog.h myprint.c myprint.h
mylog.c
#include "mylog.h"
void Log(const char*info)
{
printf("Warning: %s\n&#