2012-01-23 12 views
0

GData静的ライブラリlibGDataTouchStaticLib.aを使用してアプリケーションを作成しようとしています プロジェクト設定で適切なリンキング私のプロジェクトにGDataXMLNode.hとGDataXMLNode.mをコピーしました。ios iPhone/iPad - GDataスタティックライブラリを使用したプロジェクトlibGDataTouchStaticLib.aがビルド時に失敗する(重複するシンボル)

以下のエラーが表示されます。誰かが私がこれが何であるか理解するのを助けることができます

LD:重複したシンボル /Users/myUser/Library/Developer/Xcode/DerivedData/GData-edmqtrniowvhfjgfgngtlfxttvri/Build/Products/Debug-iphoneos/libGDataTouchStaticLib.a(GDataXMLNode.oで_kGDataXMLXPathDefaultNamespacePrefix)と /ユーザ/ MYUSER /Library/Developer/Xcode/DerivedData/MyApp-grzimbvctfmwhmdluxbuxmskcvzy/Build/Intermediates/MyApp.build/Debug-iphoneos/MyApp.build/Objects-normal/armv7/GDataXMLNode.oアーキテクチャarmv7 コマンド/開発者/プラットフォーム/ iPhoneOS。プラットフォーム/開発者/ usr/bin/clangが終了コード1で失敗しました

+0

他のフレームワーク/ dylibも必要です。 – vishy

+0

フレームワークが不足しているため重複したシンボルエラーが発生しましたか... ...正しくは聞こえません... – Zigglzworth

答えて

2

プロジェクトにGDataXMLNode.hとGDataXMLNode.mをコピーする必要はありません。重複したシンボルエラーが発生している理由は、libGDataTouchStaticLib.aライブラリには既にコンパイル済みのGDataXMLNode.mクラスが含まれているからです。

私は現在、作業中のプロジェクトでGDataライブラリを使用しており、以下の手順で設定しています。http://hoishing.wordpress.com/2011/08/23/gdata-objective-c-client-setup-in-xcode-4/この回答は、あなたが同じ設定をしていることを前提としています。しかし、私は上記のブログのコメントのいずれかによって提案されたヘッダーをインポートする方法が少し異なります。 XcodeプロジェクトGDataXMLNode.hとGDataXMLNode.mファイルを削除し、GData.xcodeprojプロジェクトは、上記のブログのように、あなたのプロジェクトに同じようにリンクされていることを確認してください、しかしはないドラッグヘッダを行うには

ディレクトリをソースツリーに追加します。代わりに、あなたの現在のターゲットのデバッグとリリースヘッダ検索パスにこれらの引数を追加します。

/usr/include/libxml2 
${BUILT_PRODUCTS_DIR}/Headers 

あなたのターゲットのビルド設定]タブの下でこれを見つけることができます。 2番目の引数は、GData.xcodeprojファイルを正しく設定していれば、すべてのGDataヘッダをプロジェクトにインポートします。あなたは、あなたがそれを必要な場所に適切なクラスの先頭でこれを入力してGDataXMLNode.hクラスを含むさまざまなGDataのクラスをインポートすることができるはずこれを行った後:

#import "GDataXMLNode.h" 

多くのクレジットは彼のためにケルビンのブログに行きます素晴らしいチュートリアル。希望が助けてくれる!

関連する問題