什么是Linux动态库,怎么编译生成它呢

来源:本站整理 作者:U盘量产网

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

动态库的编写

1、概述

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

其基本生成步骤为

⑴编写函数代码

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

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

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

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

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

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

什么是Linux动态库,怎么编译生成它呢

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

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

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

微微一笑很倾城正版手游千年风华无限钻石版第7装甲师无限金条安卓暴击联盟千年风华tv版女神危机未和谐版武林群侠传魔与道官网最新版剑魂之刃免费gm版明星梦工厂游戏宝宝爱拼图祖玛泡泡龙皇家骑士团多牛百变方块啪啪联盟乱世神将bt版坦克大决战新版王者守卫内购无限钻石金币明星梦工厂游戏塔防西游记无限内购版汉家江湖福利版封仙之怒手机版萌菌大作战2变态版三国杀OL互通版最新航海王启航满v版牧羊人之心内购版超神三国志正版荣耀战国无限内购版美杜莎传奇最新版安卓三国萌将录无限元宝版