デフォルトのコンパイラ ( にあるもの$PATH
) は、ローカル マシン用にコンパイルできるものを参照します。ARM バイナリの作成方法を知っているクロスコンパイラが必要です。iOS SDK がインストールされた Xcode がある場合は、たとえば次のように使用できます。
PATH_TO_Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc
また
PATH_TO_Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
たとえば、私のマシンでは:
ARM_GCC=~/Documents/Xcode4.6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc
IOS_SDK=~/Documents/Xcode4.6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk
# Compile
$ARM_GCC -arch armv7 -c test.c -o test.o
# Link
$ARM_GCC -arch armv7 -isysroot "$IOS_SDK" test.o -o test
次に実行すると、次のようfile test
になります。
test: Mach-O executable arm