/ / Błąd iPhone'a JSON po aktualizacji do Xcode 4 i iOS 4.3 - iPhone, Object-C, Xcode, Json, iOS

Błąd iPhone'a JSON po uaktualnieniu do Xcode 4 i iOS 4.3 - iphone, obiektyw-c, xcode, json, ios

Właśnie zaktualizowałem Xcode 4 i iOS 4.3, ale teraz, gdy próbuję zbudować / uruchomić mój projekt, zwraca następujący błąd JSON SDK:

ld: warning: ignoring file /var/folders/OV/OVQ5LuaPFY4lW0L0a9jdRk+++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs/iphoneos-iPhoneOS4.3-dqtvoenrseczxwakgamuhnlmhcbu/usr/local/lib/libjson.a, file was built for archive which is not the architecture being linked (armv7)
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_SBJSON", referenced from:
objc-class-ref in Neighbourhoods.o
objc-class-ref in StreetLevel.o
...
ld: symbol(s) not found for architecture armv7
collect2: ld returned 1 exit status

Po aktualizacji do Xcode 4, wydaje się, że teraz próbuje kompilacji do wydania, podczas gdy w starych wersjach wydaje mi się, że budował się do debugowania, ale nie widzę, gdzie mogę to zmienić.

Mam JSON SDK zainstalowany w ~ / Library / SDKs /

Zestaw SDK został dodany do dodatkowych zestawów SDKsekcja dotycząca wydania i debugowania. Upewniłem się również, że do wydania i debugowania dodano także „Inne flagi linkera”: „-all_load -ObjC -ljson”.

Po sprawdzeniu / dodaniu tego wszystkiego nadal nie można go zbudować.

Czy ktoś może rzucić jakieś światło na ten problem?

Odpowiedzi:

1 dla odpowiedzi № 1

Nie jestem pewien, dlaczego ostatecznie przestał działać po aktualizacji, ale teraz usunąłem SDK i po prostu dodałem kod źródłowy do projektu, co nie jest idealne, ale działa.


1 dla odpowiedzi nr 2

Miałem ten sam błąd podczas tworzenia strony trzeciejbiblioteka, gdy w wersji 4.2.6 nie narzekała wcześniej. Otwórz projekt biblioteki, przejdź do menu „Projekt -> Edytuj ustawienia projektu -> Karta kompilacji” i zajrzyj do „Architektura”.

Pod podpozycjami „Architektury” i „Prawidłowe architektury” sprawdź, czy zawierają odniesienie do „armv7”. Jeśli nie, będziesz musiał go wybrać / dodać.

Zrób to samo dla aktywnego celu: menu „Projekt -> Edytuj aktywny cel -> Kompilacja”.

Po wprowadzeniu zmian skompiluj ponownie, a nie powinieneś mieć błędów linkera.


0 dla odpowiedzi № 3

Miałem działający projekt, który połączyłem sięprzełącz się na SDK 4.3 po aktualizacji Xcode 4. Usunąłem ARM7 z architektury docelowej, pozostawiając tylko ARM6 i to naprawiło. Strzał w ciemność, ale być może inni też mogą skorzystać z tego obejścia.