武装v8精灵到马赫

时间:2014-06-03 19:59:15

标签: elf ios7.1 mach-o

我有一个C和Arm v8程序集(内联汇编)程序。我编译它以产生一个64位臂静态链接的精灵。我需要能够在iPhone上运行它,但它给我一个错误'无法执行二进制文件'。这是因为我试图运行一个精灵而不是iPhone所需的机器人。

有没有可以将arm v8 elf转换为mach-o的转换器? 我所看到的大部分内容都是从x86 elf到mach-o

1 个答案:

答案 0 :(得分:1)

您应该考虑正确设置您的工具链、编译器和链接器。您需要一个针对该目标的跨工具链。 如果您使用的是 GNU 工具,请考虑: 使用带有正确目标选项(GNU-triplet)的配置命令重新编译您的交叉编译器以及 bin-utils。 对于 iPhone,这应该是: ../configure --target=arm64-apple-darwin 。 . . .一个儿子 (关于设置交叉编译器工具链的 RTFM。) 希望有帮助。在任何情况下,正确的 GNU-triplet 也将决定文件头。