在OSX Mountain Lion中使用Qt运行mach_inject

时间:2013-04-18 09:08:36

标签: xcode macos qt compiler-construction osx-mountain-lion

OSX Mountain Lion 上,我能够编译mach_inject和包含的测试项目。按预期工作,注射功能完美。

我现在正尝试使用来自 QtCreator 编译的Qt项目中的相同mach_inject框架。我已经尝试过clang和gcc编译器。

Everything编译并运行应用程序,但在调用mach_inject时,我收到错误:

mach_inject failing.. (os/kern) invalid address

跟踪mach_inject,失败发生在最后一步,当它调用thread_create_running时。

有谁知道这里的问题是什么?我假设这与Qt提供的编译器选项与XCode使用的编译器选项有关,但可能完全错误!

感谢。

1 个答案:

答案 0 :(得分:0)

问题结果是32/64位不兼容 - 因为(自然地)你不能将64位捆绑包注入到32位应用程序中!

如果其他人遇到类似问题,可以使用mach_inject_bundle_stub进行调试,因为由于其他问题,可能会出现内核相同的错误。