以编程方式枚举Mac OS X上动态库中的符号

时间:2011-06-07 20:27:17

标签: c macos symbols nm

我需要一种方法来枚举从Mac OS X上的dylibs导出的符号及其地址。

从shell我通常会使用nm来实现这一点 - 是否有一个库可以从我的代码中使用以获得nm提供的相同内容?与Windows上的dbghelp API类似。

作为最后的手段,我想我可以生成nm并解析输出,但如果有更简洁的方法,我很想避免这种情况。

1 个答案:

答案 0 :(得分:3)

nm(和otool)拥有内置的知识,而不是使用API​​。您将获得的最好的是定义文件格式的头文件(请参阅'man Mach-O')。我会调用nm并解析输出;重用现有组件没有任何问题,因为接口是程序执行而不是函数调用。