2012-04-09 16 views
6

otrzymuję ten błąd:Błąd z iOS 5.1 podczas korzystania ASIHTTPRequest i SBJSON

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

Uwaga Dodałem ramy rdzenia graficznego, konfiguracji systemu, podstawowe usługi mobilne, libz.dylib, libz.1.2. 5.dylib, sieć CF, zestaw UI i podstawy. Przeszukałem wszystkie fora i spędziłem prawie 4 dni, ale po prostu nie znajduję przyczyny.

Kiedy komentuję moje linie kodu ASIHTTPRequest i SBJSON, to działa dobrze. Dodałem wszystkie klasy dla ASIHTTPRequest i SBJSON i zaznaczyłem trzykrotnie. Czy ktoś może zasugerować, co robię źle?

+0

Czy którakolwiek z odpowiedzi była dla ciebie przydatna? Jeśli tak, powinieneś zaakceptować jedną z nich. –

Odpowiedz

0

Dla błędu ASIHTTPRequest, brzmi to tak, jakby nie dodać ASIHTTPRequest.m do projektu.

(Lub dodałeś ASIHTTPRequest.m, ale zapomnieli wspomnieć o 4 mld błędy Xcode emituje o ARC - patrz Why are my ASIHTTPRequest files showing ARC errors?)

+0

po prostu ponownie uruchomiony raz po usunięciu może być mój projekt był w nierozpoznanej sekcji, dowiedział się w terminalu ps -el | grep 'Z' – Vacca

10

chciałbym przyjrzeć sekcji Etapy budować w cel. W sekcji "Źródła kompilacji" sprawdź pliki .m dla ASIHTTPRequest i SBJson. Czasami, gdy przeciągasz zewnętrzne klasy do projektu, nawet jeśli zaznaczysz pole do skopiowania plików do projektu, nie dostaną się one do tych źródeł kompilacji. Po przeciągnięciu pliku do Xcode istnieje pole wyboru, aby dodać plik do celu. Jeśli ta opcja nie jest zaznaczona, plik nie zostanie wprowadzony do źródeł kompilacji. Usuń pliki i dodaj je ponownie, upewniając się, że plik jest zaznaczony (lub jeśli chcesz, możesz ręcznie dodać pliki .m).

3

miałem ten sam problem, ale kiedy obejmował następujące frame-pracy enter image description here

jego pracy grzywny now..Don't zapomnij podać -fno-objc łukowego w źródle kompilacji enter image description here

Najlepsze życzenia .......

4

Dla ASIHTTP Prośba o dodanie następujących struktur:

  • libz.1.2.5.dylib
  • SystemConfiguration
  • UIKit
  • Fundacja
  • CoreGraphics
  • MobileCoreServices
  • CFNetworks

Jeśli używasz klas ASIHttp w iOS 5 lub nowszy, trzeba skręcić ARC off dla ASIHttpRequest klasy w Project-> Build Phases -> Compile Sources przy użyciu -fno-objc-arc dla klas API ASI.

Mam nadzieję, że rozwiązuje problem.

Powiązane problemy