Linux C编程之四 动态库(共享库)的制作

一、整体大纲

二、共享库的制作

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

posted @ 2019-05-14 12:20  pointerC++  阅读(966)  评论(0编辑  收藏  举报