Linux中的动态库(共享库)的制作
Posted xuejiale
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中的动态库(共享库)的制作相关的知识,希望对你有一定的参考价值。
一、整体大纲
二、共享库的制作
1. 命名规则:
lib + 名字 + .so
2. 制作步骤:
1) 生成与位置无关的代码 (生成与位置无关的.o)
2) 将.o打包成共享库(动态库)
3. 发布和使用共享库:
4. 解决程序执行时动态库无法被加载的问题:
1)放到系统的库目录 中 -- 不允许使用
2)临时测试
环境变量: LD_LIBRARY_PATH=将动态库的路径设置给该变量
将设置的值, 导入到系统环境变量中: export LD_LIBRARY_PATH
当终端关闭, 设置会失效
3)不常用的方法(永久设置):
在家目录的 .bashrc文件 中添加一句话: export LD_LIBRARY_PATH=动态库目录的绝对路径
.bashrc修改完成, 需要重启终端
4)修改配置文件
a. 需要找动态连接器的配置文件 -- /etc/ld.so.conf
b. 动态库的路径写到配置文件中 -- 绝对路径
c. 更新 -- sudo ldconfig -v
5. 优缺点:
三、动态库的制作示例
动态库的制作示例请看博客:https://www.cnblogs.com/xuejiale/p/10741311.html
以上是关于Linux中的动态库(共享库)的制作的主要内容,如果未能解决你的问题,请参考以下文章