位置: 编程技术 - 正文

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命令执行结果)

  • 银行存款利息收税吗
  • 未实际处置资产损失税前扣除金额的分录?
  • 水电怎么开票
  • 流动资金包括哪三种
  • 机械设备买回来怎么消毒
  • 工会经费税前扣除凭证
  • 年初未分配利润和年末未分配利润的关系
  • 制造费用结转成什么
  • 发票回退是什么情况
  • 职工伤残补助金被单位扣留违反什么法
  • 其他应付款跨年如何应对
  • 外购白酒用于个人销售吗
  • 小规模纳税人开具1%增值税专用发票可以抵扣吗
  • 个体户交地税
  • 普票抵扣税
  • 公司注销留抵税金能退税吗
  • 上年度所得税费用又退回来了,如何做账
  • 公司法人如何从公司提钱
  • 员工离职再入职要重新签订合同吗
  • 电脑检测不到税控盘原因
  • 合同签订中,可以撤销吗
  • 公司员工驻外补贴政策
  • 一般纳税人劳务发票税点多少
  • bios是什么请简要介绍一下
  • 如何升级win10系统版本
  • php r
  • 二级资本债是什么意思
  • 民营非盈利机构
  • cpqeadm.exe是什么进程 可以关闭吗 cpqeadm进程查询
  • Sublime Text v4.0(4143)破解方法
  • 免税企业所得税的有
  • 临时工交押金会被扣吗
  • PHP:checkdate()的用法_Date Time函数
  • 本期进项税额转出额是什么意思
  • php soap wsdl
  • 总账是按年还是按月结账
  • 比肩美国
  • fsck命令详解
  • 农民专业合作社是企业法人吗
  • 小规模增值税减征额怎么算
  • 零余额账户什么时候开始停用
  • 商品流通企业库存商品的核算方法主要有
  • js怎么存储数据
  • python smote算法
  • 已抵扣发票在什么地方查
  • 公司车辆固定资产管理办法
  • 哪些情况可以开立基本账户
  • mysql数据库优化配置
  • 向客户收取服务费会计分录
  • 普通发票开具的管理是?
  • 会员代金券模板
  • 经营性流动资产减去经营性流动负债
  • 开票金额大于收入增值税申报表填写
  • 购买车辆的进项税怎么勾选
  • 企业职工充值地税怎么交
  • 车船税没有发票可以入账吗
  • 发票已付款,可以开红字吗
  • 已核销的坏账又收回时应当及时入账,防止形成账外款
  • 如何计提五险一金比例
  • 工程款打入个人账户扣税吗
  • 暂估的进项税额怎么抵扣
  • 财务票子怎么粘
  • 透明数据网
  • linux中关闭系统命令
  • The graphics pipeline ,Open GL 渲染管线
  • node.js gui
  • android按钮点击效果的实验报告
  • 跳跳僵尸小游戏攻略
  • Android与OpenCV2.4.4(2013最新)搭建图像处理框架
  • perl脚本教程视频
  • perl删除文件夹
  • android ui线程和主线程的区别
  • shader入门
  • 你必须知道的最新婚姻法
  • node.js deno
  • js怎么理解
  • js兼容ie
  • 山东省国家税务局总局官网
  • 税控盘换新会影响旧盘数据吗
  • 教师票优惠需要交税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设