2

私はこのチュートリアルに従っています:http: //brandontreb.com/beginning-jailbroken-ios-development-building-and-deployment/

foob​​arという名前でアプリケーションを起動します。しかし、「make」と入力すると、...

19:33:14-~/code/theos/foobar$ make
Making all for application foobar...
 Compiling main.m...
 Compiling foobarApplication.mm...
 Compiling RootViewController.mm...
 Linking application foobar...
ld: file is universal (4 slices) but does not contain a(n) armv6 slice:     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/usr/lib/crt1.o for architecture armv6
collect2: ld returned 1 exit status
make[2]: *** [obj/foobar] Error 1
make[1]: *** [internal-application-all_] Error 2
make: *** [foobar.all.application.variables] Error 2

xcodeの代わりにtheosを使用しているため(バージョン6.0 SDKでは4.5がインストールされていますが)、ビルド設定を変更しても役に立ちません。

参考までに私はiphoneiOS4.3.3用に開発しています

4

1 に答える 1

8

これは現在theosの既知の問題です。iOS6SDKでXcode4.5にしかアクセスできない場合は、makefileの先頭に次のように配置する必要があります。

ARCHS = armv7

古いSDKにアクセスできる場合は、以下を使用すると、armv6用に正常にコンパイルできます。

TARGET = iphone:sdkversion

ここで、sdkversionは「4.0」などの形式の数値文字列です。したがって、5.1 SDK(armv6オブジェクトを作成できる最新のもの)を使用する場合は、makefileの先頭に次のように配置します。

TARGET = iphone:5.1
于 2012-10-07T08:41:04.697 に答える