本文主要是介绍自治静态库与共享库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在c/c++程序执行中,需要用到各种提前写好的函数或方法,避免程序员每次都费力地编写常用的代码。这里的提前写好的函数的集合就是库文件了。库文件分为两类,静态库和共享库。静态库在每次代码编译时直接加进代码里,作为可执行程序的一部分,以.a来表示。共享库不加入程序中,只在程序运行时调动使用,以.so表示。
下面分别制作一个简单的静态库和共享库
创建.c文件
一步步编译生成.o文件
用ar crv libxx.a xx.o格式的命令生成.a格式的静态库
-c(create)如果不存在则创建,不发出ar警告。
-r(replace)表示当插入add.o已存在同名文件则覆盖。
引用时使用命令 gcc -o file file.c -E. -lxxx命令
-E.表示在当前目录下查找,这里有一个.
-lxxx表示连接该静态库,lib和.a可省略不写
有时会加-static参数表示运行时不需要再次链接
共享库
同样需要.o文件
用.o文件通过命令 gcc xx.o -fPIC -shared -o libxx.so.xx.xx格式命令生成共享库。
然后将库文件放入/lib或/usr/lib的LD_LIBRARY_PATH中
可以使用命令export LD_LIBRARY_PATH=.:%LD_LIBRARY_PATH
这篇关于自治静态库与共享库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!