有个.so(unix 动态链接库)文件,有办法可以查看它都提供什么样的函数或接口可以调用吗??谢谢。

反编译可以吗?或者有别的什么办法吗?谢谢。... 反编译可以吗?或者有别的什么办法吗?谢谢。 展开
 我来答
不知详解
2011-12-21 · 知道合伙人软件行家
不知详解
知道合伙人软件行家
采纳数:609 获赞数:2254
自学计算机。

向TA提问 私信TA
展开全部
nm 命令 可以看到符号表(不是所有库都包含这些信息,因为代码在执行的时候只用地址,这些信息是调试用的,正式的版权软件不一定包含这些),其中可以看到函数名,和变量名。但是具体传入参数的类型和其他信息,其实在标准C和C++在二进制库文件中是不包括这些信息的,进栈和出栈是在编译阶段决定的。
gdb 调试so所属应用程序的执行,看它的调用函数的传入和传出。
反编译可以获得一些信息,不过过程复杂,因为你要观察汇编代码和地址之间的跳转。如果你只是开发程序的话,获得完善的信息,你只能查看手册。
但是如果你是想用某个版权软件的某个so的功能的话只能反编译分析代码了。如果你具备反编译技能的话,应该不会问这个问题了。所以别伤脑筋了。你火候到了自然都有办法了。
如果借此以营利是违法的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式