转载:http://www.cnblogs.com/kungfupanda/p/3708799.html

chrpath是用来改变程序的depends lib 的搜索路径的,比如我们一般使用
$ldd  application
    linux-vdso.so.1 =>  (0x00007fff89844000)
    libQt3Support.so.4 => /usr/lib/libQt3Support.so.4 (0x00007f53f7424000)
    libQtSql.so.4 => /usr/lib/libQtSql.so.4 (0x00007f53f71e6000)
    libQtXml.so.4 => /usr/lib/libQtXml.so.4 (0x00007f53f6f9f000)
    libQtNetwork.so.4 => /usr/lib/libQtNetwork.so.4 (0x00007f53f6c84000)
    libQtGui.so.4 => /usr/lib/libQtGui.so.4 (0x00007f53f60d0000)
    libQtCore.so.4 => /usr/lib/libQtCore.so.4 (0x00007f53f5c99000)
    libpthread.so.0 => /lib/libpthread.so.0 (0x00007f53f5a7d000)
    libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f53f576d000)
    libm.so.6 => /lib/libm.so.6 (0x00007f53f54e9000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f53f52d2000)
那么我们现在想改变一个so库的搜索路径,不使用/usr/lib/下面的,而是用/usr/local/lib目录下面的,那么就可以使用chrpath工具了

$chrpath -r "/usr/local/lib/" application
application: RUNPATH=/usr/lib
application: new RUNPATH: /usr/local/lib

$chrpath -c application
application: RUNPATH=/usr/local/lib

$ldd application
    linux-vdso.so.1 =>  (0x00007fff76555000)
    libQt3Support.so.4 => /usr/local/lib/libQt3Support.so.4 (0x00007ff62e8a8000)
    libQtSql.so.4 => /usr/local/lib/libQtSql.so.4 (0x00007ff62e666000)
    libQtXml.so.4 => /usr/local/lib/libQtXml.so.4 (0x00007ff62e41d000)
    libQtNetwork.so.4 => /usr/local/lib/libQtNetwork.so.4 (0x00007ff62e0f0000)
    libQtGui.so.4 => /usr/local/lib/libQtGui.so.4 (0x00007ff62d436000)
    libQtCore.so.4 => /usr/local/lib/libQtCore.so.4 (0x00007ff62cfa6000)

That which didn't kill me makes me stronger

chrpath工具使用的更多相关文章

  1. Unity3d入门 - 关于unity工具的熟悉

    上周由于工作内容较多,花在unity上学习的时间不多,但总归还是学习了一些东西,内容如下: .1 根据相关的教程在mac上安装了unity. .2 学习了unity的主要的工具分布和对应工具的相关的功 ...

  2. 细说前端自动化打包工具--webpack

    背景 记得2004年的时候,互联网开发就是做网页,那时也没有前端和后端的区分,有时一个网站就是一些纯静态的html,通过链接组织在一起.用过Dreamweaver的都知道,做网页就像用word编辑文档 ...

  3. 应用工具 .NET Portability Analyzer 分析迁移dotnet core

    大多数开发人员更喜欢一次性编写好业务逻辑代码,以后再重用这些代码.与构建不同的应用以面向多个平台相比,这种方法更加容易.如果您创建与 .NET Core 兼容的.NET 标准库,那么现在比以往任何时候 ...

  4. .NetCore中的日志(2)集成第三方日志工具

    .NetCore中的日志(2)集成第三方日志工具 0x00 在.NetCore的Logging组件中集成NLog 上一篇讨论了.NetCore中日志框架的结构,这一篇讨论一下.NetCore的Logg ...

  5. dll文件32位64位检测工具以及Windows文件夹SysWow64的坑

    自从操作系统升级到64位以后,就要不断的需要面对32位.64位的问题.相信有很多人并不是很清楚32位程序与64位程序的区别,以及Program Files (x86),Program Files的区别 ...

  6. Java基础Map接口+Collections工具类

    1.Map中我们主要讲两个接口 HashMap  与   LinkedHashMap (1)其中LinkedHashMap是有序的  怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...

  7. 渗透测试工具BurpSuite做网站的安全测试(基础版)

    渗透测试工具BurpSuite做网站的安全测试(基础版) 版权声明:本文为博主原创文章,未经博主允许不得转载. 学习网址: https://t0data.gitbooks.io/burpsuite/c ...

  8. CorelDRAW X8 如何破解激活(附国际版安装包+激活工具) 2016-12-15

    之前有位搞平面的好友“小瘦”说CDR X8无法破解,只能用X7.呃……呃……呃……好像是的 其实CDR8难激活主要在于一个点“没有离线激活了,只可以在线激活”,逆天不是专供逆向的,当然没能力去破解,这 ...

  9. Web Api 入门实战 (快速入门+工具使用+不依赖IIS)

    平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html 屁话我也就不多说了,什么简介的也省了,直接简单概括+demo ...

随机推荐

  1. MapSearch 阅读随笔

    MapSearch https://developer.apple.com/library/ios/samplecode/MapSearch/Introduction/Intro.html#//app ...

  2. phonegap 新窗口 WebView

    自定义WebView窗口打开 import com.ap.work.QuickWeb public class QuickPlugin extends CordovaPlugin { /** * 新开 ...

  3. Windows Socket 最大连接数

    Socket 编程时,单机最多可以建立多少个 TCP 连接,受到操作系统的影响. Windows 下单机的TCP连接数受多个参数影响: 最大TCP连接数 [HKEY_LOCAL_MACHINE \Sy ...

  4. CISCO ASA 防火墙 IOS恢复与升级

    在IOS被误清除时的处理办法: 1.从tftp上的ios启动防火墙 防火墙启动后 ,按“ESC”键进入监控模式 rommon #2> ADDRESS=192.168.1.116 rommon # ...

  5. 《面向对象程序设计》第二次作业(1)(A+B问题)

    作业记录: 问题描述与代码已上传github仓库object-oriented文件夹下 题目一览 Calculate a + b and output the sum in standard form ...

  6. POJ2533Longest Ordered Subsequence(DP)

    http://poj.org/problem?id=2533 在经典不过的DP题目了.... #include <map> #include <set> #include &l ...

  7. CCF 201403-1 相反数 (水题)

    问题描述 有 N 个非零且各不相同的整数.请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数). 输入格式 第一行包含一个正整数 N.(1 ≤ N ≤ 500). 第二行为 N 个用单 ...

  8. iOS Framework lipo报错 lipo: can't map input file

    fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ ...

  9. installshield Basic 工程每次安装完提示重启电脑

     将Sequence中的ScheduleReboot Action的Condition清空即可. 

  10. 函数WideCharToMultiByte() 详解

    函数原型: int WideCharToMultiByte( UINT CodePage, DWORD dwFlags, LPWSTR lpWideCharStr, int cchWideChar, ...