rpath失效是怎么回事

简介: rpath失效是怎么回事

 今天发现程序崩溃,查了一下,找的是系统库,而不是我的库。难道rpath失效?先说一下调用关系:


 执行文件A,库B,库C。库C跟系统重名。


 检查了一下文件,路径正确:readelf -d run


后来研究发现,两台机器的编译器不同导致的:


  • 一个编译器自动把自己相关库加上,包括库C。
  • 另外一个不指明就不加。执行程序指明了rpath,可是不需要;到了库B,加载时又没有rpath,于是就调用了系统库。


相应的,解决办法有两个:


  • 编译执行A时把库链上。
  • 编译库B时加上rpath。


目录
相关文章
|
7月前
|
缓存 数据库
16- 什么是缓存雪崩 ? 怎么解决 ?
# 16 - 缓存雪崩及其解决方案 缓存雪崩是指大量缓存在同一时刻失效,导致数据库承受巨大压力。原因在于键的过期时间设定相同。解决方法是在键的过期时间中加入随机因素,避免同时失效。
47 2
|
2月前
|
消息中间件 缓存 中间件
缓存一致性问题,这么回答肯定没毛病!
缓存一致性问题,这么回答肯定没毛病!
|
3月前
|
Ubuntu Shell Linux
10-27|把错误的时间改对
10-27|把错误的时间改对
|
7月前
|
关系型数据库 MySQL 索引
mysql索引失效的原因以及解决办法
该内容列举了索引失效的五个原因,包括:条件表达式中的函数使用、不等于操作符、列类型不匹配、LIKE操作的模糊匹配和数据量过小。并提供了对应的解决办法:避免函数操作索引列、使用合适条件、保证类型匹配、选择合适索引、优化表结构和使用索引提示。
657 1
解决URLClassLoader使用addURL方法失效的问题
解决URLClassLoader使用addURL方法失效的问题
130 0
|
缓存
什么是缓存雪崩 ? 怎么解决 ?
什么是缓存雪崩 ? 怎么解决 ?
90 0
|
缓存 监控 容灾
缓存雪崩 ? 怎么解决
缓存雪崩是指当缓存中的大量数据同时失效或者某些原因导致无法使用时,所有的请求都会直接访问数据库,造成数据库压力剧增,甚至导致系统崩溃。下面将详细介绍缓存雪崩的解决方案。
154 0
|
编译器
rpath失效是怎么回事
rpath失效是怎么回事
124 0
|
存储 NoSQL
3.10.0-693.5.2内核nfs客户端租约过期挂死问题分析
## 现象 1. 边缘存储两个节点fileserver,glance挂载物理机上的挂载点均出现挂住无法访问 2. 从客户端抓包看,客户端内核间隔5s向服务端发送renew租约请求,服务端返回NFS4ERR_EXPIRED,即租约过期错误,从抓包现象看客户端一直向服务端发送相同的clientid renew请求,服务端一直返回租约过期错误,导致挂载点无法恢复 ![](https://ata2-img
1701 1
3.10.0-693.5.2内核nfs客户端租约过期挂死问题分析

热门文章

最新文章