位置: 编程技术 - 正文

linux动态链接库使用方法分享(Linux动态链接库编译)

编辑:rootadmin

1、前言

在实际开发过程中,各个模块之间会涉及到一些通用的功能,比如读写文件,查找、排序。为了减少代码的冗余,提高代码的质量,可以将这些通用的部分提取出来,做出公共的模块库。通过动态链接库可以实现多个模块之间共享公共的函数。之前看《程序员的自我修养》中讲到程序的链接和装入过程,这些玩意都是底层的,对于理解程序的编译过程有好处。 gcc -shared -fPIC caculate.c -o libcac.so编写一个测试程序调用此动态链接库的函数,程序如下所示:

编译生产可执行文件main如下:gcc main.c -o main -L ./ -lcac (其中-L指明动态链接库的路径,-l后是链接库的名称,省略lib)程序执行结果如下所示:

3、获取动态链接库的函数linux提供dlopen、dlsym、dlerror和dlcolose函数获取动态链接库的函数。通过这个四个函数可以实现一个插件程序,方便程序的扩展和维护。函数格式如下所示:

dlopen()是一个强大的库函数。该函数将打开一个新库,并把它装入内存。该函数主要用来加载库中的符号,这些符号在编译的时候是不知道的。写个测试程序调用上面生产libcac.so库如下所示:

程序执行结果如下所示:gcc call_main.c -o call_main -ldl

推荐整理分享linux动态链接库使用方法分享(Linux动态链接库编译),希望有所帮助,仅作参考,欢迎阅读内容。

linux动态链接库使用方法分享(Linux动态链接库编译)

文章相关热门搜索词:Linux动态链接库编译,linux动态链接库后缀,linux动态链接库和静态链接库,Linux动态链接库怎么调用,linux动态链接库和静态链接库,Linux动态链接库编译,Linux动态链接库链接输出不可表示的节,linux动态链接库和静态链接库,内容如对您有帮助,希望把文章链接给更多的朋友!

程序中获取linux系统启动时间方法 1、前言时间对操作系统来说非常重要,从内核级到应用层,时间的表达方式及精度各部相同。linux内核里面用一个名为jiffes的常量来计算时间戳。应用

linux下安装oracle后使用命令行启动的方法 linux启动oracle #su-oracle$sqlplus/assysdbastartupexit$lsnrctlstart$ps-ef|greporacle

linux系统mysql自动备份并使用ftp上传的方法 #!/bin/bash#ftp设置Host=FTP_IPUsername=FTP_userPasswd=FTP_passwd#备份mysql并导出到文件mysqldump-u用户--password=用户密码数据库名$(date+%Y%m%d)-数据库名.sql#压缩备份文件ta

标签: Linux动态链接库编译

本文链接地址:https://www.jiuchutong.com/biancheng/374741.html 转载请保留说明!

上一篇:使用scp获取远程linux服务器上的文件 linux远程拷贝文件

下一篇:程序中获取linux系统启动时间方法(获取linux命令执行结果)

  • 亏损企业如何填报企业所得税
  • 固定资产抵扣增值税何时开始
  • 印花税减免优惠政策2020
  • 资金收益率计应收账款吗
  • 发票报销哪些要素不能少
  • 公司注销单位社保欠费怎么处理
  • 以前年度多缴的税款退回现金流量
  • 餐饮业可以开增值税专用发票吗?
  • 企业所得税清算备案日和结束日怎么填
  • 填第二季度的利润总额怎么填
  • 信用减值损失贷方
  • 支票报销是怎么操作的
  • 非广告公司可以开广告费发票吗?
  • 以前漏记的成本怎么处理
  • 暂估入账估低了怎么办
  • 补交以前年度房产税如何记账
  • 小规模纳税人与注册资金有关系吗
  • 如何知道企业交了多少税
  • 增值税零税率发票开具条件
  • 工商年报报表
  • 出租车库收入是否需要计算缴纳土地增值税
  • 凭证类别不合法怎么处理
  • 资产负债表在建工程怎么填列
  • i9 9900ks什么意思
  • 企业如何选择会计师事务所
  • 市净率怎么计算举例说明
  • 结转已经销售商品成本的分录
  • win10电脑文件夹打不开
  • mac设置邮件
  • php怎么添加样式
  • php 7z
  • php str函数
  • opera software
  • 企业自行搬迁需要交税吗
  • config.cfg是什么文件
  • php限制登录次数
  • 金融机构借款利率最新规定
  • thinkphp开发框架
  • 残疾人就业保障金计入什么科目
  • 垃圾清运费属于什么服务
  • 微前端Qiankun
  • opencv训练模型教程
  • 京东到家的物流模式
  • 上年折旧费多计提了,本年怎么调
  • 金税盘报送汇总在哪
  • ps里的钢笔工具
  • ubuntu 14.04 安装分区教程
  • 增值税发票红字发票未抵扣怎么开
  • 如果没有抄税就申报了
  • 期初和期末余额是什么意思
  • sql 按,拆分成多条数据
  • sql server 2008 安装文件
  • 代扣款业务的处理方式
  • 印花税减半征收优惠政策2021
  • 食堂采购原材料怎么在赣溯源备案
  • 企业取得的财政补贴是否缴纳增值税
  • 收到投资款如何声明
  • 认缴制下实收资本需要验资吗
  • 工程建设项目融资方式有哪些
  • 解除劳动合同的合法程序
  • 会计科目用错如何改正
  • 预算收入包括增值税吗
  • 长期待摊费用怎么做账
  • Centos MySQL 5.7安装、升级教程
  • win8系统运行慢怎么办
  • win7系统玩游戏
  • ubuntu 16:9
  • 怎么在win7开始菜单添加文件夹
  • windows7 cpu使用率高
  • 铁嘴大师
  • react父组件触发子组件方法
  • nodejs连接sqlserver数据库
  • 在vue中添加按钮使内容消失
  • [置顶] Deniz Saypinar
  • python循环语句中提前结束本层循环
  • android从入门到精通
  • 新能源车异地购车
  • 所属税务局怎么填写
  • 个人所得税法全文完整版2023个人工薪规定
  • 请领导审核怎么说
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设