当前位置: 首页 > news >正文

编写动态库

1.创建库.c .h文件

2.编写Makefile文件

3.make之后形成.so文件

4.make output,形成mylib

5.把mylib拷贝到test里面

mv mylib /test

6.编译

gcc main.c -I mylib/include -L mylib/lib -lmymethod

形成a.out

但是直接执行会出现以下问题

很显然没有找到动态库 

7.解决加载找不到动态库的方法

1.拷贝到系统默认的库路径 /lib64 或者/usr/lib64/

2.在系统默认的库路径/lib64 /usr/lib64下建立软连接

sudo ln -s /home/wangxiaodan/lesson23/test/mylib/lib/libmymethod.so /lib64/libmymethod.so

3.将动态库的路径添加到LD_LIBRARY_PATH中

echo $LD_LIBRARY_PATH

 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/wangxiaodan/lesson23/test/mylib/lib

4.在/etc/ld.so.conf.d建立自己的动态库路径的配置文件,然后重新ldconfig即可

 结果:

实际情况,最常用的是第一种!

结论:1.动态库在运行时需要加载,静态库不需要

2.常见的动态库被所有的可执行程序(动态链接的),都要使用,动态库又叫做共享库

所以,动态库在系统加载之后,会被所有进程共享!!!

相关文章:

  • YOLOv8 的简介 及C#中如何简单应用YOLOv8
  • 《深入浅出MySQL:数据库开发、优化与管理维护(第3版)》
  • 二刷 动态规划
  • 用JSZip,FileSaver 有现成cdn的http图片或者文件地址,弄成压缩包导出,解决如果文件名字都是一样的只导出一个图片或文件的方法
  • 定位OOM(Out of Memory)
  • 如何指定Microsoft Print To PDF的输出路径
  • 一键搞定长图处理:高效精准,轻松实现按固定高度像素切割
  • java TCP服务器与客户端通信示例
  • laravel对接百度智能云 实现智能机器人
  • Docker使用daocloud镜像加速
  • 基于python的随机森林回归预测+贝叶斯优化超参数前后训练效果对比
  • 1.k8s:架构,组件,基础概念
  • 和小红书一起参会! 了解大模型与大数据融合的技术趋势
  • 后台运行大师:HarmonyOS 3.0中如何轻松设置APP常驻后台
  • 左耳听风_030_29_推荐阅读分布式数据调度相关论文
  • [笔记] php常见简单功能及函数
  • Java反射-动态类加载和重新加载
  • java取消线程实例
  • mysql常用命令汇总
  • Python实现BT种子转化为磁力链接【实战】
  • SpiderData 2019年2月16日 DApp数据排行榜
  • Spring Boot快速入门(一):Hello Spring Boot
  • Twitter赢在开放,三年创造奇迹
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 从零开始在ubuntu上搭建node开发环境
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 技术发展面试
  • 解析 Webpack中import、require、按需加载的执行过程
  • 巧用 TypeScript (一)
  • 如何进阶一名有竞争力的程序员?
  • 如何使用 JavaScript 解析 URL
  • 使用docker-compose进行多节点部署
  • 世界上最简单的无等待算法(getAndIncrement)
  • 网页视频流m3u8/ts视频下载
  • 源码安装memcached和php memcache扩展
  • MPAndroidChart 教程:Y轴 YAxis
  • Nginx实现动静分离
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • 带你开发类似Pokemon Go的AR游戏
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • #数据结构 笔记三
  • #微信小程序:微信小程序常见的配置传旨
  • $$$$GB2312-80区位编码表$$$$
  • (2024,Flag-DiT,文本引导的多模态生成,SR,统一的标记化,RoPE、RMSNorm 和流匹配)Lumina-T2X
  • (7)摄像机和云台
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (第二周)效能测试
  • (二)WCF的Binding模型
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (一)python发送HTTP 请求的两种方式(get和post )
  • (转)http-server应用
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .net core webapi 大文件上传到wwwroot文件夹
  • .Net FrameWork总结
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。