这有点类似于在 Mac 上编译 ARM .s 文件
尤其是 Simon Urbanek 的回复,谢谢!
我基本上想知道如何让这个 asm 文件在越狱的 iPhone 上工作。目前,我正在交叉编译并尝试将对象放在 iPhone 上并运行它但没有成功,因为它显然不适用于 iPhoneOS,它只是没有 Mach-O 标头的 ARM 代码。知道如何让它工作吗?-isysroot 可能是答案,但我提供了 SDK 文件作为其输入,但我没有得到 mach-o 标头。
另外,我也很想知道是否有一种方法可以在不使用内联 gcc 的情况下在 iphone 本身上编译 ASM 代码。
无论如何,这是当前的工作流程:
[在 Mac 上]
$ cat foo.s
mov r0, r1
$/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2 -arch armv6 -c foo.s
$ file foo.o
foo.o: Mach-O object arm
$ otool -v -t foo.o
foo.o:
(__TEXT,__text) section
00000000 e1a00001 mov r0, r1
[在 iPhone 上]
$ file foo.o
foo.o: Mach-O object arm
$ otool -v -t foo.ofoo.o:
(__TEXT,__text) section
00000000 e1a00001 mov r0, r1