背景
函数库有些功能是可选的,如果编译时没有开启特定选项,编译生成函数库中就没有对应的接口函数,一些依赖这些接口函数的应用执行时就会出现异常,因此为了排查函数库是否包括特定函数,我们需要查看函数库文件的符号表;
方法
nm
nm用法如下,详细参考nm:
示例:
nm -n --defined-only xxxx.a
nm -g -C --defined-only xxxx.so
nm -D xxxx.so
nm -u hello.o
nm -A ./* 2>/dev/null | grep "T close_socket"
objdump
objdump用法如下,详细参考objdump:
示例:
objdump -tT xxx.so
objdump -x xxx.a
objdump -x xxx.so | grep "NEEDED"
objdump -T xxx.so
objdump -t xxx.so
readelf
readelf用法如下,详细参考readelf:
示例:
readelf -c xxx.a
readelf -A xxx.so
参考文章
- linux查看静态库和动态库有哪些函数
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)