轻松学会Linux动态库知识

运维 系统运维
目前,Linux系统越来越受到电脑用户的欢迎,于是很多人开始学习Linux时,在这期间,你可能会遇到Linux动态库的编写的知识,这里将介绍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配置远程桌面
责任编辑:小霞 来源: 赛迪
相关推荐

2009-12-23 15:55:53

Linux权限管理

2015-11-16 10:34:19

Linux动态库总结

2009-12-14 17:32:14

LILO配置

2009-12-16 10:58:03

Linux修改文件系统

2023-11-27 08:51:46

PythonRequests库

2010-03-04 09:51:07

Linux动态库

2009-12-03 10:23:57

硬盘安装双系统

2010-01-07 17:36:38

Linux静态库

2022-05-26 00:48:55

Linux内核硬件

2009-12-11 10:47:31

Linux共享库

2020-08-05 16:44:55

运维架构技术

2010-03-04 10:17:57

Linux动态库

2010-03-04 10:04:10

Linux动态库

2022-10-25 07:24:23

数据库TiDBmysql

2009-12-09 11:41:51

Linux Kerne

2009-10-29 16:36:49

VB.NET .DLL

2010-06-30 15:10:18

2023-06-12 07:43:05

知识库性能优化

2011-04-01 10:09:21

SQL Server记录轮班

2010-10-08 15:01:14

点赞
收藏

51CTO技术栈公众号