AdMobを使用してiPhoneアプリケーションのライトバージョンを構築しようとしています。ここのガイドラインに従いました http://www.iphonedevsdk.com/forum/iphone-sdk-development/11358-creating-lite-version-app.html そして2つの異なるターゲットを作成しました。ライトバージョンでは、#ifdefを使用してチェックし、適切な処理を行うLITEVERSIONというマクロを追加しました。
しかし、アプリのライトバージョンをビルドすると、リンカーエラーが発生します
ld:-lAdMobDevice collect2のライブラリが見つかりません:ldが1つの終了ステータスを返しました
ただし、問題なくフルバージョンをビルドできます。また、#ifdefマクロを削除しても、ビルドが正常に機能していることに気付きました(フルバージョンの場合)。これは、libAdMobSimulator.aライブラリがフルバージョンに対して適切にリンクしているが、ライトバージョンでは失敗していることを示しています。
どんなポインタでも大歓迎です!
乾杯水差し
この問題が発生したときの原因は、通常のソースファイルのようにライブラリをドラッグしてXcodeに追加したことです。
修正は、それを削除してから、「追加->既存のフレームワーク...」ダイアログを使用して適切に追加することでした。
CocoaPodsライブラリを使用していたのと同様のエラーが発生しました
-lPods-MyAppのライブラリが見つかりません
workspaceの代わりにxcodeプロジェクトを開いたため、エラーが発生しました。
CocoaPods を使用していて、pod install
を実行したところ、修正されました。
GoogleAnalyticsライブラリでも同じ問題が発生しました。私の問題は、ターゲットのビルド設定でライブラリ検索パスにパスを追加するのを忘れたことでした。 ([ターゲット]-> [ビルド設定]-> [ライブラリ検索パス])
これは、youmengsdkで使用されているライブラリlibMobClickLibrary.aが見つからないために発生します。 libMobiClickLibrary.aをプロジェクトfloderにコピーした後に発行されたものを修正します。
私は彼の問題が何であるかを理解しました。すべてのフレームワークとライブラリを削除し、両方のターゲットに追加し直したところ、機能しました。
乾杯