7-LINUX--库文件的生成与使用

一.什么是库文件

库是一组预先编译好的方法的集合。Linux系统存储的库的位置一般在:/lib 和 /usr/lib。
在 64 位的系统上有些库也可能被存储在/usr/lib64 下。库的头文件一般会被存储在
/usr/include 下或其子目录下。
库有两种,一种是静态库,其命令规则为 libxxx.a,一种是共享库,其命令规则为 libxxx.so,
如下图所示:

二.静态库的生成与使用

1.静态库的生成

以下是需要生成静态库的".c"文件,其中"foo.h"中是函数的声明,"add.c"和"max.c"
是函数的定义:

具体步骤:

三.共享库的生成与使用

1.共享库的生成

以下是需要生成共享库的".c"文件,其中"foo.h"中是函数的声明,"add.c"和"max.c" 是函数的定义:

具体步骤

四.环境变量

如果库不在标准位置下,也可以通过设置环境变量"LD_LIBRARY_PATH"来指定加
载库的路径。

五.静态库和共享库的区别

1.程序使用静态库,编译后,用到的库方法会复制到可执行程序中,再次运行,直接运行当前程序,不要连接静态库。
2.程序使用共享库,编译链接后,可执行程序只标记到用到的库方法,并不包含,再次运行,动态链接到要用的共享库。
因此,含有静态库的程序占有内存较大。

相关推荐
xbzb4 分钟前
服务器形态怎么选、BIOS 怎么进?从 1U 机架到固件启动项一次讲透
运维·服务器·bios·启动·固件·启动项
夜雪一千11 分钟前
Linux 权限、用户、用户组内容介绍
linux·运维·服务器
代码方舟22 分钟前
零信任架构实战:基于天远企业二要素验证构建自动化小微快贷法人资质核验网关
运维·人工智能·架构·自动化
拂拉氏25 分钟前
【知识讲解】 Linux信号的认识与使用
linux·信号
Web3&Basketball32 分钟前
从0到1落地AI Agent沙箱隔离Docker实战:踩坑全记录
运维·docker·容器·agent·容器安全·沙箱隔离
无毁的湖光-Al33 分钟前
高可用之路-观测篇-那些年遇到过的指标幻觉
linux·数据库·tcp
叼烟扛炮37 分钟前
Linux 学习笔记(二十九):进程信号(上)—— 信号捕捉与异步魔法
linux·运维·笔记·学习·1024程序员节
lingran__37 分钟前
Linux进程万字详解(四) | 进程地址空间深度剖析:虚拟内存、页表映射与缺页中断
linux·虚拟地址空间·虚拟内存·1024程序员节·页表·物理内存·缺页中断
wuminyu37 分钟前
JVM规范学习总结-Class文件结构
java·linux·c语言·jvm·c++
m0_5474866639 分钟前
《Linux操作系统应用项目教程》全套PPT课件2026
linux·运维·操作系统