2014-10-25 11 views
4

저는 게임 (SpriteKit-Swift)에서 일하고 있습니다. 어제까지 내 장치에서 잘 실행되고 있었지만, 오늘은 Xcode를 열었고 Xcode 빌트인이 자동으로 작성한 코드에서 컴파일러 오류가 내 코드에 나타났습니다. 필자는 새 프로그램을 작성하고 새로운 자동 코드를 프로그램에 적용하여 모든 오류를 해결할 수있었습니다. Apple이 일부 라이브러리를 변경했다고 가정합니다. 내 응용 프로그램은 iOS 시뮬레이터 (5,5s, 6,6 +)에서 완벽하게 실행되지만 내 iPhone에서 응용 프로그램을 실행하면 응용 프로그램이 충돌하고 Xcode에서 콘솔이 아닌 편집기에서이 사실을 보여줍니다. 2 번째 줄 "위협 1 메세지로 iPhone에서 앱을 실행할 수 없습니다.

dyld`dyld_fatal_error: 
0x120099088: brk #3 //MESSAGE POINTS HERE 

: EXC_BREAKPOINT (부드러운 코드 = 1, = 0x120099088)

또한 다른 파일이 보여

dyld`_dyld_start: 
0x120099000: mov x28, sp 
0x120099004: and sp, x28, #0xfffffffffffffff0 
0x120099008: movz x0, #0 
0x12009900c: movz x1, #0 
0x120099010: stp x1, x0, [sp, #-16]! 
0x120099014: mov fp, sp 
0x120099018: sub sp, sp, #16 
0x12009901c: ldr x0, [x28] 
0x120099020: ldr x1, [x28, #8] 
0x120099024: add x2, x28, #16 
0x120099028: adrp x4, -1 
0x12009902c: mov x4, x4 
0x120099030: adrp x3, 40 
0x120099034: ldr x3, [x3, #880] 
0x120099038: sub x3, x4, x3 
0x12009903c: mov x5, sp 
0x120099040: bl  0x12009908c    ; dyldbootstrap::start(macho_header const*, int, char const**, long, macho_header const*, unsigned long*) 
0x120099044: mov x16, x0 //MESSAGE POINTS HERE 
0x120099048: ldr x1, [sp] 
0x12009904c: cmp x1, #0 
0x120099050: b.ne 0x12009905c    ; _dyld_start + 92 
0x120099054: add sp, x28, #8 
0x120099058: br  x16 
0x12009905c: mov lr, x1 
0x120099060: ldr x0, [x28, #8] 
0x120099064: add x1, x28, #16 
0x120099068: add x2, x1, x0, lsl #3 
0x12009906c: add x2, x2, #8 
0x120099070: mov x3, x2 
0x120099074: ldr x4, [x3] 
0x120099078: add x3, x3, #8 
0x12009907c: cmp x4, #0 
0x120099080: b.ne 0x120099074    ; _dyld_start + 116 
0x120099084: br  x16 

동일한 메시지 위협 1 : EXC_BREAKPOINT (코드 = 1, 억제됨 = 0x120099088)

+0

프로그램이 사용자가 설정 한 중단 점에 도달 한 것처럼 보입니다. – rebello95

+0

나는 중단 점이 없으며 iOS 시뮬레이터에서 프로그램을 실행해도 중단 점이 발생하지 않아야합니까? 하지만 시뮬레이터 프로그램에서 완벽하게 잘 실행됩니다. 어떤 생각이 일어나고 있습니까? –

+3

깨끗하고 빌드하고, 브레이크 포인트를 토글하고, Xcode를 업데이트하고, 파생 데이터를 지우고, 앱을 삭제하고 다시 설치하는 등의 작업을 해보십시오. 중단 점이 없으면 Xcode에서 생각합니다. 또한'(lldb)'프롬프트에서'c'를 치면 실행을 계속할 수 있습니다. –

답변

5

을 사용하여 깨끗한 빌드 생성 ⌘ 명령 + ⌥ 옵션 + ⇧ 이동 + K이 문제가 해결되었습니다.

0

Wahoo 위대한 프로젝트 타겟을 찾기 위해 먼저 시도한 다음 UiKit을 변경하기 위해 다음을 수행했습니다. 프레임 워크를 약하게 링크하고 Xcode에서 응용 프로그램 타겟을 찾아서 검사하고 이동하려면 일반 탭. 해당 탭의 맨 아래에 유형에 대한 열이있는 프레임 워크 목록이 있어야합니다. UIKit의 유형을 필수에서 약화로 변경하고 응용 프로그램을 다시 작성하십시오. 그것은 런타임 오류를 처리해야합니다. 그러나 이것은 어디서나 도움이되지 못했습니다. 그래서 나는 마침내 (Command + Option + Shift + K)으로 청소를했다.

관련 문제