静态库: 作用:对一系列.o文件打包,方便使用 生成方法:ar -cr lib库名.a 文件 使用:gcc main.c -L 寻找库: 默认缺省路径:/lib64 /usr/lib64 自定义查找路径: -L 库路径 实际操作一次: 我创建了一个文件用来存放加减乘这样的.c .h文件 现在我要使用这些文件,第一步我就时让他们变成.o文件 再利用gcc生成可执行文件a.out 由于文件的众多,在这几步过程里,我们已经看的眼花缭乱,这完全不符合程序员的核心价值观:程序简单、代码美观、可读性强。所以这时候就需要我们引入静态库打包! 这时候我们发现系统生成了一个叫libmymath.a的库文件,我们用nm查看一下 没错了,这里不就包含着sub.o add.o mul.o 这样我们需要的文件,现在我们使用库再执行一次 运行完成结果正确,我们的静态库成功打包 静态库,每个进程在调用时都要在物理内存上开辟一块空间用来存储静态库,当调用的进程越来越多,这就严重造成了物理内存的浪费,而动态库的出现就是为了解决这个问题。
|