如果我缺少.dylib/.a/.so
文件的头文件,是否有办法找出我可以链接的函数,然后自己编写头文件?
我问OSX,因为对象检查的工具略有不同。
使用otool非常简单。
https://developer.apple.com/library/archive/documentation/Performance/Conceptual/CodeFootprint/Articles/MachOOverview.html: ~:文本= % 20马赫% 2做的是% 20 % 20本机文件% 20 % 20 % 20解读% 20记忆。
MachO二进制文件的__text
部分保存了可链接的代码。
在OSX中可以打印出所有的函数,像这样。
otool -t libpython3.8.a -v
__text
部分用-t
,-v
拆卸。
将输出类似
的内容__PyDict_Pop:
0000000000003300 pushq %rbp
0000000000003301 movq %rsp, %rbp
... assembly ...
... ret value...
0000000000004614 popq %rbp
0000000000004615 retq
0000000000004616 nopw %cs:(%rax,%rax)