0

私はiOS開発の初心者です。iOS 5.1シミュレーターで実行しているプロジェクトがありますが、正常に動作しており、エラーは発生していませんが、同じプロジェクトでiOS 6.0、iOS 6.1シミュレーターで実行しているときに次のエラーが発生しています。どうすればこの問題を修正できますか?

エラー:

Undefined symbols for architecture i386:
"_OBJC_CLASS_$_GDataOAuthAuthentication", referenced from:
  objc-class-ref in GDataOAuthViewControllerTouch.o
"_OBJC_CLASS_$_GDataOAuthSignIn", referenced from:
  objc-class-ref in GDataOAuthViewControllerTouch.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
4

4 に答える 4

2

これを試して、

主な問題は、古い GData SDK を使用していると思われることでした。コンパイラを Apple LLVM 4.2 から LLVM GCC 4.2 に変更するだけで、アプリは完全にコンパイルされます。

参照用にスクリーンショットを添付しました

プロジェクト -> ターゲット -> ビルド設定 -> ビルド オプション ここに画像の説明を入力

于 2013-09-07T05:55:13.117 に答える
2

現在のアーキテクチャ/SDK バージョン用にコンパイルされていない外部ライブラリに対してリンクしています。おそらく 5.1 SDK に対してプリコンパイルされた VDOAds ライブラリを使用しているようです。最新の iOS SDK 用にプリコンパイルされたバージョンを入手する必要があります。

于 2013-08-28T08:20:53.447 に答える
0

TargetSettings -> Build Phases -> Compile Sources を開き、不足しているライブラリがそこに含まれていることを確認します。

于 2013-08-28T08:23:24.430 に答える