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

发布于 2024-11-14 08:36:38 字数 226 浏览 2 评论 0原文

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

在 shell 中,我通常会使用 nm 来实现此目的 - 是否有一个库可以从我的代码中使用来获取与 nm 提供的功能相同吗?类似于 Windows 上的 dbghelp API。

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

I need a way to enumerate symbols and their addresses exported from dylibs on Mac OS X.

From the shell I would normally use nm for this - is there a library which I can use from my code to get the same things that nm provides? Similar to the dbghelp API on Windows.

As a last resort I suppose I could spawn nm and parse the output but I'm keen to avoid this if there is a cleaner method.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

橪书 2024-11-21 08:36:38

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

nm (and otool) have the knowledge built into them rather than using an API. The best you will get is header files defining the file format (see 'man Mach-O'). I would invoke nm and parse the output; there's nothing wrong with reusing an existing component just because the interface is program execution rather than function call.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文