2015-09-16 13 views
10

Właśnie zaktualizowałem Xcode 7 i CocoaPods 0.38.2 i, po rozwiązaniu niektórych problemów z Swift 2, otrzymałem następujący błąd łącznika z moim mieszanym projektem Objective-C & Swift kierowanym na system iOS 7:Błąd łącznika Xcode 7 z RestKit i CocoaPods

Undefined symbols for architecture x86_64: 
    "_OBJC_CLASS_$_RKManagedObjectRequestOperation", referenced from: 
     objc-class-ref in NetworkHelper.o 
    "_OBJC_CLASS_$_RKManagedObjectResponseMapperOperation", referenced from: 
     type metadata accessor for ObjectiveC.RKManagedObjectResponseMapperOperation in MappingHelper.o 
    "_RKLogCoreDataError", referenced from: 
     ___33-[RKEntityByAttributeCache load:]_block_invoke in libRestKit.a(RKEntityByAttributeCache.o) 
     ___43-[RKManagedObjectImporter finishImporting:]_block_invoke in libRestKit.a(RKManagedObjectImporter.o) 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

CoreData jest dołączona do pliku .pch i jest dołączana przed RestKit w nagłówku mostkowania, a Bitcode jest wyłączony. Korzystam z narzędzia RestKit 0.24.1.

Ponieważ wygląda na to, że RestKit nie wykrywa obecności szkieletu CoreData, a jego deklaracje warunkowe są odpowiednio pomijane, wypróbowałem wiele różnych sposobów poinformowania mojej aplikacji lub pakietu RestKit o obecności rdzenia Dane, ale nic nie pomaga.

+0

po prostu mają taki sam problem 'Undefined symboli dla architektury x86_64: "_OBJC_CLASS _ $ _ RKManagedObjectRequestOperation", odwołuje się od:' podczas nieużywania żadne Swift w wszystko. –

+0

Czy dodałeś framework CoreData do swojego projektu? (http://www.binpress.com/tutorial/learn-objectivec-building-an-app-adding-frameworks-to-an-xcode-project/101) –

+0

@WilliamPower Tak, zrobiłem. Jest to najwyraźniej problem CocoaPods z Xcode 7. – pr1001

Odpowiedz

0

upgrade się cocoapods i xcode7.0.1

i usunąć xcworkspace i pod zainstalować ponownie.

+0

Nie działa dla mnie. –

+0

Nie działa dla mnie ani –

1

Uaktualniono starszą wersję RestKit (0.23.3) do 0.25.0.

Uaktualniłem także Xcode do wersji 7.0.1, usunięto xcworkspace i zmieniono pod install dla dobrego pomiaru.

+1

RestKit 24.1 i 25.0 łam mojej implementacji RKManagedObject https: //github.com/RestKit/RestKit/issues/2312 ... więc faktycznie chcę przejść na niższą wersję, ale wtedy mój linker nie zadziała! FML! – CQM

4

I rozwiązany ten problem, wykonując następujące kroki:

  1. zaktualizować cocoapods (0.39.0)
  2. Idź do budowy ustawienia mojego celu i wyszuka ścieżek wyszukiwania nagłówka.
  3. Ustaw wszystkie ścieżki wyszukiwania nagłówków jako rekursywne (To jest ważne) Próbowałem także przez mój rekursywny tylko do zestawu narzędzi, ale z jakiegoś powodu nie wiem, że to nie działa.
  4. Następnie wyłącz ten kod.
  5. Wreszcie kompilacja.

Reference screenshot

Aby uzyskać więcej informacji see this link

Powiązane problemy