社区
工具平台和程序库
帖子详情
ldd命令和makefile问题
冷风1023
2018-05-24 09:01:02
ldd命令和makefile时链接的库版本为什么不一致呢?
比如,makefile -la,编译成文件后我用ldd下,查看到所需是liba.so.1(这里1也有可能是其它值)而不是liba.so呢?
这是为什么呢?由什么决定的呢?
...全文
764
4
打赏
收藏
ldd命令和makefile问题
ldd命令和makefile时链接的库版本为什么不一致呢? 比如,makefile -la,编译成文件后我用ldd下,查看到所需是liba.so.1(这里1也有可能是其它值)而不是liba.so呢? 这是为什么呢?由什么决定的呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
冷风1023
2018-05-26
打赏
举报
回复
ldd命令和makefile时链接的库版本为什么不一致呢? 比如,makefile -la,编译成文件后我用ldd下,查看到所需是liba.so.1(这里1也有可能是其它值)而不是liba.so呢? liba.so.1=>xxxxxxxxxxx而不是liba.so=>? 这是为什么呢?由什么决定的呢?
冷风1023
2018-05-26
打赏
举报
回复
早了解过了啊,没有看到这方面内容,有的话给看下。
赵4老师
2018-05-25
打赏
举报
回复
了解一下软连接,硬连接?
冷风1023
2018-05-25
打赏
举报
回复
??????
gmssl.tar.gz
ubuntu20编译Gmssl时,“version OPENSSL_1_1_0d not defined”
问题
的较好解决办法 这个
问题
应该时找到了gmssl运行时的依赖库libssl.so.1.1。但这个库并不是跟gmssl编译时同时生成的库,而是ubuntu原有的同名库。用
ldd
命令
可以查看:
ldd
/usr/local/bin/gmssl 修改Gmssl的
Makefile
文件,在CFLAGS赋值时添加-Wl,-rpath=$(LIBRPATH),LIB_LDFLAGS赋值LIB_LDFLAGS=-Wl,-rpath=$(LIBRPATH) -znodelete -m64。
leetcode中国-xinh79.github.io:我的个人博客
leetcode中国 关于我 更多关于我的信息请查看 我的 More Project: 文章目录 [TOC] 感情随笔 均以过时,写的时候“年代较早” 八月份在学校,可能是审稿审多了,导师作为T-ITS的AE让我成为了一名正式的审稿人。是CCF推荐的 B类学术刊物。 科研其实是现代文明的死角,其最底层的生产逻辑还停滞在手工业时代,可无奈的是目前这种生产逻辑确实是最适配高校科研发展的。所以你很难在社会道德上去批判老师,因为这种学阀资本主义是为社会大众所普遍认同的。培养出来的学生更多的是“高学历厂工”。 Linux笔记 基础
命令
vim编辑器 gcc编译流程 制作库文件
makefile
gdb调试 系统API 进程概念 进程API 进程间通信 mmap 信号 守护进程 线程 线程同步 网络编程 select-poll epoll多路I/O模型 广播与组播 Libevent 基础 文件I/O 文件 函数 I/O库 数据文件和信息 进程环境 进程控制 信号 线程 线程控制 高级I/O 进程间通信 网络套接字 详细信息 查看依赖库:
ldd
文件查找:find 文本搜索:grep 排序:sort
LDD
3中
Makefile
浅析
新手,刚开始学linux下的驱动开发。前期看了本robert love《linux kernel development》,很多
问题
都没有深究。在学习
ldd
3时,遇到的第一个
问题
是编译自己的内核,这个花费了一些工夫后终于搞定。遇到的第二个
问题
就是这本书的第二章《构造和运行模块》中的
Makefile
的
问题
。现在初步有了自己的理解,记录下来,供以后温故知新,也方便有我相同疑问的朋友参考。如有错误之处,请大家指出,共同进步,谢谢。我的开发环境是fedora 13OS,自己下了2.6.35的Kernel源代码树,从
ldd
中
Makefile
的解释
# Comment/uncomment the following line to disable/enable debugging #DEBUG = y # Add your debugging flag (or not) to CFLAGS ifeq ($(DEBUG),y) DEBFLAGS =
你应该在
makefile
中加上
ldd
-r和md5sum
命令
在linux中, 当我们编译出so的时候, 会经常用
ldd
-r去查看依赖库(确实是否缺依赖, 便于在编译期间发现
问题
), 也会用md5sum
命令
来查看so库的md5值, 便于比对和确认。 别浪费体力每次去敲这两个
命令
了, 直接放在
makefile
中吧, 这么搞起后, 不用每次敲
命令
, 不用每次去找so库的路径, 每次至少省下10-20秒中的时间, 关键是, 心情爽爽哒。
工具平台和程序库
24,855
社区成员
27,343
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章