2

在osx上,我做了一个小程序来编辑我的进程的内存(主要是在flash游戏中作弊)。很长一段时间后我试图重新编译这个程序,我意识到我升级了我的操作系统(并更换了我的笔记本电脑)并且发生了一些变化。现在我在 10.7.5

我有一个链接错误:

Undefined symbols for architecture x86_64:
   "_vm_region", referenced from:
...

但是我没有找到任何可链接的库来获取 vm_region 函数。而且我没有为 vm_region 和大部分 /usr/include/mach 部分安装任何手册页!

有什么建议可以重新编译该程序吗?我在哪里可以找到这些手册页?

4

2 回答 2

3

那就是你要找的 mach_vm_region,Xoff。API 已在 10.5 中重命名。所以 vm_* API 变成了 mach_vm_*。“_”只是链接器符号前缀。进行搜索/替换,它应该可以工作。您可能还需要将标题调整为 . API 本身(有意)没有记录,除了与内核源代码(来自 opensource.apple.com 的 XNU 包)一起打包的一些 HTML 手册页。

于 2013-04-10T19:26:31.273 回答
1

当我尝试在 64 位进程上使用“vm_region”时弹出此错误消息,并且应该使用带有适当参数的“vm_region_64”

mach_msg_type_number_t info_count = VM_REGION_BASIC_INFO_COUNT_64;
于 2016-03-25T07:44:07.640 回答