[解決済み] Xcode 3.2.3 with iPhone SDK 4をインストールすると、「Base SDK missing」と表示され、他のSDKが表示されない。
質問
私はこのコミュニティWikiを、SOで見た他の多くのQ/Aをまとめるために作りました。 SOで見た他のQ/Aをまとめるために作りました。ここにいらっしゃる方は、おそらく Xcode 3.2.3 の最終バージョンと iPhone SDK 4 をインストールしたことでしょう ( ダウンロード リンク をインストールした後、これらの問題の 1 つまたは両方に遭遇しました。
-
以前動作していた Xcode iPhone プロジェクトで、どこかに "Base SDK Missing" が表示されます。このようなものです。
-
関連しますが、より一般的な観察として、以前に利用可能だった Device または Simulator SDK の選択肢 (たとえば、3.0、3.1、3.1.3、...) のどれもが、以前は見られた場所で利用できなくなりました。
どのように解決するのですか?
概要
なぜこのような現象が起こるのかを説明し、次に特定の "Base SDK Missing" の問題を修正する方法を説明します。修正方法については、一番下まで読み飛ばすことができますが、この文章をすべて読むことをお勧めします。また、John Muchowの素晴らしい を取る もお勧めです。
もしあなたが、強く関連した問題を持つ Xcode 3.2.4 のアップグレードに特に興味を持っているなら、次のように協議するのがよいかもしれません。 を参照してください。 .
1つのSDKですべてを制する
4.0 は、新規または更新された iPhone 専用アプリを提出するために許可された唯一の SDK バージョンです。 新規または更新された iPhone 専用アプリを提出するために許可された唯一の SDK バージョンです。これは、Apple の iOS 4 レディネス チェックリスト (登録が必要です) から直接引用しています。
すべての新しいアプリケーションと既存のアプリケーションのアップデートは、iPhone SDK 4 でビルドする必要があります。 iPhone SDK 4 でビルドする必要があります。 iOS 2.x をターゲットとするアプリケーションはサポートされませんので、ご注意ください。
おそらく、推測ですが、iPad 専用およびユニバーサル アプリは、3.2 SDK を使用するはずです。 は、3.2 SDK を使用する必要があります。
それは が、4.0 & 3.2 が SDK の唯一の選択肢である理由です。
これはまた、プロジェクトが壊れている理由でもあります。なぜなら、以前マッピングされていたSDKは 非推奨 であるためです。
(でも)3はマジックナンバー
落ち着いてください。iPhone OS 3.0 を実行しているデバイスをターゲットにすることは可能です (ただし、それ以下ではできません)。 使用する SDK は を使用してコンパイルします。 は制限しません。 下 -- どのiOSバージョンに を制限するものではありません。プロジェクトなどでパッチを当てたら(次章参照) (次章参照) で、"iPhone OS Deployment Target" を、より低いバージョンのiOSに設定することができます。次章のステップ 7 を参照してください。
今、あなたはいくつかの厄介な領域に入っていることに注意してください。通常の Xcode 3.2.3 コンパイラーは、もはや 3.0 のみの呼び出しへのコンプライアンスを強制しませんし、これらのためのシミュレーターも持っていません。また、4.0の機能をサポートしたい場合は、3.0デバイスでのクラッシュを防ぐためにいくつかの条件付きコードを作成する必要があります。楽しいです。
まだ、以前の Xcode バージョンまたは SDK を (Apple から!) ダウンロードしてインストールすることができます (cf. ここで ). 複数のXcodeバージョンを異なるディレクトリにインストールすることも可能です(例:/Developerに1つのバージョンだけを置く)。古い Xcode を使用して、アプリが 3.x SDK に準拠しているかどうかをテストすることができ、難しい作業は高級なコンパイラやシミュレータに移行できます。しかし、以前の SDK の製品を使用して App Store に提出することはできません。
ご参考までに、私は出荷前にこのチェックだけを行う予定です。
私のコンディションはどうなっているか
Matt Gallagherは、Cocoa with Loveの投稿で、次のようなタイトルのバージョン条件付きコードについて述べています。 iOS3、iOS3.2、iOS4 の条件付きコードのための Tips &Tricks" "です。 . 4.0 の機能を条件付きで使用することを計画している場合は、これをチェックアウトすることを強くお勧めします。
ベース SDK の欠落を修正しました。
- プロジェクトの読み込み
- メニューから、Project > Edit Project Settings...を選択します。
- Architecture > Base SDK] で、利用可能なデバイスの 1 つを選択します。 iPhone 3.2 または iPhone 4.0 のいずれかを選択します。iPhone のみであれば、4.0 を選択します。
- そのウィンドウを閉じます。
- メニューから、Project > Edit Active Target "YourTarget"を選択します。
- アーキテクチャ > ベース SDK] で、利用可能なデバイスまたはシミュレーターのオプションから 1 つを選択します。 またはシミュレーターのオプションとして、iPhone 3.2 または iPhone 4.0 のいずれかを選択します。
- 以前の iOS バージョンをターゲットにしたい場合は、同じウィンドウで デプロイメント > iPhone OS デプロイメント ターゲット] で、サポートしたいバージョンのうち最も低いものを選択します。 サポートしたい最も低いバージョンを選択します。2.x バージョンのサポートは非推奨です。 のサポートは非推奨です。上記引用の "準備チェックリスト"を参照してください。
Xcode 4 以降のベース SDK の場所
上記の手順で行いますが、Step2については、以下をクリックしてください。
- ナビゲーター サイドバーの左側にあるフォルダー アイコンを使用して、プロジェクト ナビゲーターを選択します。
- そのビューの最上部にあるプロジェクトを選択します。
- プロジェクトの設定は、メイン・エディター・パネルに表示されます。上部の "Build Settings" を選択すると、その下に 'Architecture' セクションが表示されます。
追記
このトピックに関するより詳細な情報は、このトピックの最初の回答にもあります。 質問 . また、いくつかの有用な情報があります はこちら .
関連
-
[解決済み] iOSの配布証明書の正しい更新方法
-
[解決済み] モバイルSafari(iPhone)でテキストエリアのインナーシャドウを除去する
-
[解決済み] プロダクションコードでNSLog()を使ってはいけないというのは本当ですか?
-
[解決済み] iPhoneでMonoTouchは禁止になったのか?[クローズド]
-
[解決済み] Objective-C 2.0でメソッドに非推奨のフラグを立てるにはどうすればよいですか?
-
[解決済み] iOSアプリでターゲットのバージョン/ビルド番号をプログラム的に表示するには?
-
[解決済み] カメラロールに画像を保存する方法を教えてください。
-
[解決済み] UITextFieldの高さを設定するには?
-
[解決済み] iPhoneでテキスト入力のポップアップダイアログボックスを表示する簡単な方法は?
-
[解決済み] CALayersを使ったUIViewの丸め方 - 角の一部だけ - How?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 私のアプリケーションは「暗号を含む」のでしょうか?
-
[解決済み】@try - Objective-Cのcatchブロック
-
[解決済み] iPhoneでウェブページからアプリがインストールされているかどうかを確認する方法
-
[解決済み] レビュー待ちの状態でバイナリを拒否する(バイナリ拒否ボタンが見つからない)
-
[解決済み] iOSアプリでターゲットのバージョン/ビルド番号をプログラム的に表示するには?
-
[解決済み] 空のUITableViewを処理する。フレンドリーなメッセージを表示する
-
[解決済み] iPhoneシミュレーター - 低速接続をシミュレートする?
-
[解決済み] オプションのメソッドを持つプロトコルを作成するには?
-
[解決済み] AppDelegate.mで画面上に現在表示されているUIViewControllerを取得する。
-
[解決済み] iPhoneでNSStringをAES暗号化する方法