2013-09-11 5 views
32

Właśnie zaktualizowaliśmy XCode 5 GM, a projekt (iPhone tylko ukierunkowany na iOS 7), który został zbudowany pod DP 5, teraz daje błąd:XCode 5 Błąd linkera GM: zbyt wiele informacji o zwinięciu kompaktowym w funkcji anon dla architektury i386

ld: in /Users/dan/Documents/Projects/ImageProApp/Pods/SparkInspector/SparkInspector.framework/SparkInspector(ExplorerViewState.o), too many compact unwind infos in function anon for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Używamy CocoaPods obejmuje kilka składników, CocoaAsyncSocket, CocoaLumberack, Spark inspektora i osiągalności. Domyślam się, że musieliśmy usunąć Spark Inspector, ten błąd po prostu odwoływałby się do innego komponentu.

Czy ktoś może zalecić poprawkę? Powiedz mi, co flagi kompilatora/linkera mają wykorzystywać informacje o niekompleksowych informacjach o odprężeniu?

Dzięki,

Dan

+0

To może być problem z cocoapodami. Może być dobrze, aby otworzyć problem na Githubie. https://github.com/CocoaPods/CocoaPods/issues?state=open – ray

+0

@ray Rzeczywiście problem z obecnymi kokosami podczas archiwizowania. https://github.com/CocoaPods/CocoaPods/pull/1352 – mattyohe

+1

@mattyohe Hmm, udało mi się zarchiwizować moją aplikację po zaktualizowaniu profilu Build Active Architectures for Debug. Łączenie wciąż kończy się niepowodzeniem podczas symulacji kierowania, więc jestem skłonny pomyśleć, że ten konkretny problem jest związany z 64-bitowymi rzeczami, które właśnie wprowadzono dzisiaj, a symulator nie jest do tego przystosowany ... jakoś. – ray

Odpowiedz

7

Obejście: do budowy urządzenia.

Nie tak wiele, ale spróbuj zbudować aplikację dla urządzenia zamiast symulatora. Może być związane z wprowadzeniem 64-bitów.

Mogę zarchiwizować moją aplikację, ale kiedy próbuję zbudować/uruchomić na symulatorze, nie uda się połączyć z tym samym błędem, który otrzymujesz.

Aby było jasne, używam również kokosowego.

33

UPDATE: Google wydała poprawkę dla biblioteki Google Analytics https://code.google.com/p/analytics-issues/issues/detail?id=338

Zobacz wersję v3.01 tutaj: https://developers.google.com/analytics/devguides/collection/ios/resources

FWIW z biblioteki Google Analytics, błąd łącza zdarza się tylko wtedy, gdy wdrażanie cel jest ustawiony na 7.0. Jeśli usuniesz cel wdrożenia do wersji 6.1, na przykład połączenie działa bezbłędnie.

Dla odniesienia, w odniesieniu do Google Ananlytics, napisałem problem w Google's bug tracker.

+0

Cudownie! Działa, ale chciałbym wytłumaczyć * dlaczego *, ponieważ i tak budowałem iOS7 w sim. – ray

+0

Potwierdzone v3.01 działa teraz z wdrożeniem docelowym 7.0. – TalkLittle

+0

Tak, również potwierdzam. nie jest to obejście, jest to najlepszy sposób na pozbycie się wiadomości. – Martin

7

zmieniając "iOS Deployment cel polegający na czymś mniej niż "iOS 7.0"

wewnątrz

"projekt" -> Budowanie Ustawienia -> Wdrożenie

pracował dla mnie, myślę, że ma to coś zrobić z konfiguracją używaną do budowania zewnętrznej biblioteki. Problem z symulatorem pojawił się tylko wtedy, gdy dołączono Jot Touch SDK

+0

Ten sam problem tutaj z Jot Touch SDK. Buduje urządzenie, ale nie jest symulatorem systemu iOS 7. – seeker12

1

ta odpowiedź może trochę się opóźnić, ale miałem ten sam problem ze strukturą strony trzeciej. Z jakiegoś powodu dodaliśmy opcję -all_load do ustawień kompilacji, ale kiedy ją usunąłem, udało nam się zbudować projekt.

Więc idź do:

Projektu -> Budowanie Ustawienia -> Inne flagi łącznikowe

i usunąć flagę -all_load.

Mam nadzieję, że to pomoże.

Powiązane problemy