2012-02-28 5 views
3

J'ai quelques problèmes graves ... Je dois construire un projet à partir d'un autre développeur dans ios 5 et Xcode 4.2 qui qui a à la fois bibliothèque et RestKit Three20 ...Restkit et Three20 avec iOS5

Au début, je supprimé ces deux bibliothèques et utilisé des copies fraîches de deux ... ils ont construit mais j'ai découvert un autre développeur édité le kit de restitution et utilisé trois20 dans le kit de restitution aussi ... Donc je dois garder le vieux kit ... alors le kit est ok Je devais intégrer Three20 à la fois à mon projet principal et restkit ... j'intégré that..after intégration je trouve cette erreur ..

ld: duplicate symbol _OBJC_CLASS_$_TT_FIX_CATEGORY_BUG_UISplitViewController_TTNavigator in /Users/mdrezaurrahman/Library/Developer/Xcode/DerivedData/Fake_Conversation-dyigdwifnataxadzsxfirsdjnhsc/Build/Products/Debug-iphonesimulator/libThree20UICommon.a(UISplitViewController+TTNavigator.o) and /Users/mdrezaurrahman/Library/Developer/Xcode/DerivedData/Fake_Conversation-dyigdwifnataxadzsxfirsdjnhsc/Build/Products/Debug-iphonesimulator/libRestKit.a(UISplitViewController+TTNavigator.o) for architecture i386 

commande/développeur/Plateformes/iPhoneSimulator.platform/Developer/usr/bin/clang a échoué avec le code de sortie 1

alors je pensais que c'était parce que deux projets utilisent les mêmes bibliothèques à la fois .. Ensuite, j'ai utilisé deux copies de Three20 et intégré un avec le projet principal et un autre avec le projet de restkit

je fait face à cette erreur

ld: duplicate symbol _OBJC_IVAR_$_TTSectionedDataSource._items in /Users/mdrezaurrahman/Library/Developer/Xcode/DerivedData/Fake_Conversation-bbrkduxuzifkumgngujfpbbboyzb/Build/Products/Debug-iphonesimulator/libRestKit.a(TTSectionedDataSource.o) and /Users/mdrezaurrahman/Library/Developer/Xcode/DerivedData/Fake_Conversation-bbrkduxuzifkumgngujfpbbboyzb/Build/Products/Debug-iphonesimulator/libThree20UI.a(TTSectionedDataSource.o) for architecture i386 

commande /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang échoué avec le code de sortie 1

Je pense que ce est la même erreur ... peut anyo ne me montrez le chemin?

Répondre

1

On dirait que vous essayez de lier deux copies de la bibliothèque Three20 en un seul binaire. Cela ne marcherait pas. Si la copie de RestKit que vous avez obtenue contient déjà Three20, vous n'avez pas besoin de le lier séparément. S'il ne contient qu'une partie de Three20, essayez de vous débarrasser de cette partie.

+1

il y a quelques fichiers d'en-tête #import qui montraient erreur et le chemin de recherche d'en-tête était ok sur restkit ... mais sous restkit il n'y avait pas de binaires three20 .. ils l'appelaient du binaire de projet parent ... toutes les choses semblent si confuses –

+0

Les messages d'erreur indiquent clairement que libRestKit.a contient un symbole appelé 'TTSectionedDataSource'. Ci-dessus, vous avez mentionné que vous deviez "intégrer" Three20 dans RestKit et votre projet principal. Je suppose que l'erreur est arrivée là. Both RestKit et votre main devraient être en mesure de trouver les en-têtes de Three20, mais un seul d'entre eux (probablement le principal) devrait relier Three20. – tonklon

+0

header recherche chemin de la cible de restkit est ../three20/Build/Products/three20 three20 est à la fois le dossier de repos et le dossier three20 sont sur le même répertoire parent ... à confirmer est mon approche est correcte? J'ai pris une nouvelle copie du vieux projet ... –