使用readelf工具,查看:1.可执行程序依赖哪些动态库;2.动态库依赖哪些动态库 例如: readelf -a xxx|grep library mips-linux-gnu-readelf -a xxx|grep library
使用nm工具,查看静态库和动态库中有那些函数名: (T类表示函数是当前库中定义的,U类表示函数是被调用的,在其它库中定义的,W类是当前库中定义,被其它库中的函数覆盖)。 有时候可能需要查看一个库中到底有哪些函数,nm工具可以打印出库中的涉及到的所有符号,这里的库既可以是静态的也可以是动态的。 nm列出的符号有很多, 常见的有三种: 一种是在库中定义的函数,用T表示,这是最常见的; 一种是在库中被调用,但并没有在库中定义(表明需要其他库支持),用U表示; 另外一种是所谓的“弱态”符号,它们虽然在库中被定义,但是可能被其他库中的同名符号覆盖,用W表示。 例如,假设开发者希望知道hello库中是否引用了printf(): $nm libhello.so | grep printf