Xcode에서 심볼 파일 처리


285

누군가 Xcode가 장치를 연결 한 후 "심볼 파일 처리 중"이라고 말했을 때 실제로 수행중인 작업을 말해 줄 수 있는지 궁금합니다.

스크린 샷


꽤 오랜 시간 기다려야했는데 ... 약 30 분 후에 장치에 배포했습니다. 어쩌면 Mac에서 기기를 인식하는 데 시간이 걸릴 수 있습니다.
Jayprakash Dubey

답변:


263

장치에서 (디버그) 기호를 다운로드하므로 특정 iOS 버전의 장치에서 디버깅하고 해당 iOS 버전에서 발생한 충돌 보고서를 기호화 할 수 있습니다.

기호는 CPU에 따라 다르므로 위의 내용은 특정 iOS 장치뿐만 아니라 특정 CPU 유형에 대한 기호를 가져온 경우에만 작동합니다. 현재 필요한 CPU 유형은 armv7 (예 : iPhone 4, iPhone 4s), armv7s (예 : iPhone 5) 및 arm64 (예 : iPhone 5)입니다.

따라서 armv7이있는 iPhone 5에서 발생한 충돌 보고서를 상징하고 특정 iOS 버전에 대해 armv7에 대한 기호 만 표시하려는 경우 Xcode는 충돌 보고서를 (완전히) 상징화 할 수 없습니다.


19
최근 Xcode가 iPad2 또는 iPhone4의 심볼 파일을 처리하지 않는 것으로 나타났습니다. 항상 30 분이 지나도 반쯤 멈춰서 절대 끝나지 않을 것입니다. 결국 나는 완전히 새로운 커넥터 케이블을 끊어 내 Mac Mini에 직접 연결함으로써 작동하게되었습니다 (이전에는 연장 케이블을 통해 연결되었습니다). 연결 상태가 좋지 않으면 심볼 업데이트로 인해 엉망이된다는 결론을 내 렸습니다.
Ash

5
그렇다면 왜 xcode 배포판과 함께 해당 심볼을 묶지 않습니까? 장치에서 추출하는 데 어려움을 겪는 이유는 무엇입니까?
Matthew Exon

3
모든 아키텍처의 심볼은 (iOS) 버전 당 크기가 1GB보다 크며 각 버그 수정 릴리스에 대해 항상 Xcode 업데이트가있는 것은 아닙니다. Xcode는 API 업데이트 / 변경으로 만 업데이트됩니다.
Kerni

@VladimirDespotovic 여기서 무엇을 해결 하시겠습니까? 이것은 문제가되지 않습니다. 디버거가이 데이터를 필요로하고 충돌 기호화를 위해서도 필요합니다. 이 질문에는 문제가 없었습니다.
Kerni

36

Xcode 버전 6.1.1 (6A2008a)에서 "기호 파일 처리"이후에 장치와 관련된 기호 (iOS 버전 및 CPU 유형 포함)가 포함 된 폴더는 ~ / Library / Developer / Xcode / iOS DeviceSupport /에서 다음과 같이 생성되었습니다.

여기에 이미지 설명을 입력하십시오


6
(널) (널)에 무엇입니까?
Anton Tropashko

6
@AntonTropashko (null) ((null))실제로.
Alejandro Iván

6
제 경우에는 "(null) ((null))"에 아무것도 포함되어 있지 않습니다!
Sjakelien

7
Sym 파일은 필요할 때 다운로드되므로이 위치에있는 대부분의 폴더를 모두 휴지통에 버렸습니다. SSD에서 24 기가를 넘었습니다!
Sjakelien

@Sjakelien 폴더가 잘 표시됨
Brad Thomas

19

xCode는 모든 충돌 로그를 복사합니다. 속도를 높이려면이 창에서 직접 충돌 보고서 수를 분석 한 후 삭제하십시오.

Devices -> View Device Logs -> All Logs

스크린 샷


@QLiu 물론입니다. 버그로 보이거나 로그가 예상보다 큽니다.
WINSergey

이 로그에 액세스하는 방법? (나는 xCode에 대한 경험이 0이다)
Ben

@ 벤 창-> 장치-> 왼쪽에서 장치 선택-> 완료
WINSergey

4

제 경우에는 상징적 인 것이 영원히 취해졌습니다. 켜기 / 끄기 및 홈 버튼 모두로 전화기를 강제로 다시 시작합니다. 이제 상징화가 빨리 끝나고 xcode를 통해 앱을 실행하기 시작했습니다.


1

나는 이것이 기술적 인 해결책이 아니라는 것을 알고 있지만 케이블로 컴퓨터에 장치를 연결하고 컴퓨터에서 장치를 분리하고 다시 케이블로 연결하면 나에게 맞는 솔루션으로 해결할 수 없었습니다. 전에 제공되었습니다.


운이 좋았을 때 ... 또는 다른 행동에 대한 지연된 반응 일 수 있습니다. 연결을 끊었다가 다시 연결하고 끝날 때까지이 모드로 돌아갔습니다.
Paul Masri-Stone

0

장치에서 검색된 충돌 로그를 응용 프로그램의 보관 된 (올바르게 표시됨) 버전과 비교하여 코드에서 충돌이 발생한 위치를 검색하려고 시도합니다.

자세한 내용 은 xcode 심볼 파일 위치 를 확인하십시오.


0

성가신 오류. 케이블을 iPad에 직접 연결하여 문제를 해결했습니다. 애플의 패스 스탠드 스탠드에 iPad가 있다면 어떤 이유로 든 프로세스가 끝나지 않을 것입니다.


3
내가 스탠드에 있으면 결코 완료되지 않기 때문에 오류입니다.
GoldenJoe

2
나는 대답을 제대로 표현 인식하지만, 다른 작업에 대한 벌금을 작동하는 USB 허브에도 불구하고, 나를 위해 해결의 USB 포트에 직접되었다 연결, 바로 나를 위해 참이었다
jalone

0

iOS 버전에 해당하는 SDK 버전 추가 (예 : iOS 10.3)

통로:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport


다운로드 중입니다. 완료되면 괜찮습니다. 그림과 같이 :

여기에 이미지 설명을 입력하십시오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.