轻松学会Linux动态库知识


目前,Linux系统越来越受到电脑用户的欢迎,于是很多人开始学习Linux时,在这期间,你可能会遇到Linux动态库的编写的知识,这里将介绍Linux动态库的编写知识,希望能学会。

四、动态库的编写

1、概述

动态库一般以.so结尾,就是shared object的意思.

其基本生成步骤为

⑴编写函数代码

⑵编译生成动态库文件,要加上 -shared 和 -fpic 选项 , 库文件名以lib开头, 以.so 结尾。

使用方式分为两种: 隐式调用和显示调用

隐式调用类似于静态库的使用,但需修改动态链接库的配置文件/etc/ld.so.conf;显示调用则是在主程序里使用dlopen、dlsym、dlerror、dlclose等系统函数。具体的调用方式会在 "五、动态库的调用" 中详细说明.

2、编写最简单的动态库文件

为了便于对照, 我们仍然采用静态库中的文件做例子.

编写如下两个文件,注意放在同一目录中

  1. myalib.h//静态库头文件  
  2. myalib.c//静态库实现文件  
  3. //myalib.h 文件的内容  
  4. void test();  
  5. //myalib.c 文件的内容  
  6. #inlcude <stdio.h> 
  7. void test()  
  8. {  
  9. printf("test\n");  

3、编译生成动态库 ,库文件名以lib开头, 以.so 结尾。

gcc -fpic -shared -o libtest.so myalib.c

此时就生成一个libtest.so文件,以上就是Linux动态库的编写的知识。

  1. 配置笔记:Linux配置DNS服务器
  2. 讲解RedHat Linux 5显示中文的方法
  3. 教会你Redhat Enterprise Linux关闭SELinux
  4. 轻松完成Linux安装KDE软件包
  5. 阐述Redhat Linux配置远程桌面

相关内容