기본 콘텐츠로 건너뛰기

[UNITY3D] iOS Xcode로 archive를 하는데 먹통이 되는 현상

Too slow to compile archive in xcode (IL2CPP)

오늘 하루종일 한 일이 배포용 버전 만드는 일이었다. ㅎㅎ

개발 버전으로 빌드 테스트 잘 되어서 외부 테스터들을 위해서 
배포 버전을 만드는데 계속 archiving  에서 먹통..ㅠㅠ
30분을 기다려보고 재부팅하고 다시 한시간을 기다려봐도 깜깜 무소식이다.

활성 상태 보기로 체크 해보니
clang 이란 놈이 메모리 16G 중에 15G를 잡아 먹고 있었다.
이건 기다려서 해결될 일이 아니다. ㅎㅎㅎ

구글신의 도움으로 
프로젝트 중에 Hashtable 쓰는 곳이 있으면  clang 컴파일러가 
Hashtable가 사용된 코드를 미친듯이 풀어헤쳐 버리는 듯 한 것같다.

그래서 Unity에서 사용하는 구조체 중에 Hashtable 사용하는 구조는
폐기해버렸나 보다 (이제야 이해가 되는듯 ㅋㅋ)
WWW 클래스 에서 쿠키 값 저장하는데 Hashtable 폐기되고 
Dictionary 구조체를 사용하게 바뀌어 있었는데 

하여튼 지금 상으로 해결 방법은 Unity Project에서 사용되는 코드를 바꾸던가
아니면 

Xcode setting 에서 optimization level 을 0으로 설정하면 된다.


어떤 날은 미친듯이 진도 나가는 날이 있지만,
어떤 날은 미친듯이 한 문제만 푸는 날도 있네.. ^^;
그래도 감사하게도 해결했으니 편히 잠을 자는구다.


참고한 링크 
http://fogbugz.unity3d.com/default.asp?721062_n482bt9n4qm7ejgb


IOS IL2CPP Freeze in xCODE on default optimization level

There's nothing with my system that's the problem. I don't have any code to attach.

Basically, whenever we built our game for 64bit with IL2CPP - the xcode compiler froze and the clang process took up all memory. Only way we could build was with optimization level 0 in the xcode settings.

We found the issue in one of our DLL from a third party that we use. It contained auto-generated code with a Hashtable setting values in about 8000+ lines of code.
We changed all the Hashtables to Dictionaries and the xcode compiler started working again.

Anyway, just though I'd let you know in case there's anything you can do to fix issues like this on your side.


Public status: Public

License type: Free



댓글

이 블로그의 인기 게시물

[Unity3D] 유니티 내장 로컬 푸쉬 기능

 유니티 내장 로컬 푸쉬 기능  - iOS에서만 가능, Android는 직접 개발하던가 Plugin 사용  먼저 등록을 해주고 ( 등록 안하면 작동 안함 ) public void InitNotification() { #if UNITY_ANDROID #elif UNITY_IOS UnityEngine.iOS.NotificationServices.RegisterForNotifications( UnityEngine.iOS.NotificationType.Alert | UnityEngine.iOS.NotificationType.Sound ); #endif } 시간을 정해서 등록해준다.( 3일동안 접속 안할 경우 알림이 오게 한다면 ) public void ScheduleNotification() { //Affer 3 Day string _body01 = "다시 시작해볼까요?"; #if UNITY_IOS UnityEngine.iOS.LocalNotification notiWake = new UnityEngine.iOS.LocalNotification(); DateTime theTime_Wake = DateTime.Now; theTime_Wake = theTime_Wake.AddHours(24*3); Debug.Log("theTime_Wake:"+theTime_Wake); notiWake.fireDate = theTime_Wake; notiWake.alertAction = "타이틀"; notiWake.alertBody = _body01; notiWake.soundName = UnityEngine.iOS.LocalNotification.defaultSoundName; UnityEngine.iOS.NotificationServices.ScheduleLocalNotification(notiWake); #elif UNITY_ANDROID #endif } 취소 함수를...

여름성경학교 선물, 아직도 고민하십니까?

ㆍ 작성일 2005-07-20 (수) 14:41 “이번 성경학교에는 어떤 선물을 사야하나? 집에서 사주는 것만큼 좋은걸 줄 수도 없고 성경동화책 종류는 가격도 비싸고 아이들이 별로 좋아하지 않을텐데…. 예산도 넉넉지 않은데 사야할 품목은 많고…” 여름성경학교의 마지막 프로그램인 ‘수료식’에 쓰일 선물 준비에 고심인 S교사. 선물을 구입하기 위해 동료 교사와 함께 기독교백화점을 찾았지만 이 ‘일’이 쉽지 않음을 예상하고 있다. 넉넉지 않은 예산, 사야할 품목은 많고 넉 넉지 않은 예산에 맞춰 프로그램을 준비하는 것도 버거운데 올해는 인형극 전문 강사를 초빙해 강사료까지 책정했고 그러다 보니 ‘남은 돈’으로 선물 준비를 할 수밖에 없는 상황, S교사는 사야할 선물 품목을 몇번이나 헤아려보지만, `답'이 나오지 않는건 마찬가지다. 준비해야 할 선물은 8여 종. 개근상, 새벽기도상, 모범상, 단체상, 새신자상, 전도상, 기념상, 찬양율동상 등. 한번이라도 출석한 어린이에게 주는 기념상은 저렴한 가격에 맞춰야 하고 새신자상과 전도상은 각별히 신경 써야할 품목이다. 평균 30명 정도가 출석하는 J교회 아동부의 올해 여름성경학교 총예산은 100만원. 그 중에 선물 구입에 쓸 수 있는 돈은 7만원 뿐이다. 이 돈으로 5~60여 물품을 사야 하는 S교사는 눈이 가는 곳에 손은 갈 수 없는 현실이 착잡하기만 하다. “이제 선물로 아이들의 마음을 끌어들이는 시대는 갔다”는 목소리도 있으나 한 동네에만 교회가 2~3개가 되는 상황에서 “주변 교회에서 해 주는 것만큼은 줘야 하지 않겠느냐”라는 것이 교회학교의 실질적인 상황이다. 매년 비슷한 상품, 한정된 종류 기 독교 서점은 문구세트, 색연필, 크레파스, 노트, 연필깎이 등 학용품과 십자가 목걸이, 스티커, 액자 등 악세사리 그리고 성경책, 기독 서적, 찬양 테잎 등 기독교관련 물품 등 크게 세 가지 부류의 용품을 구비하고 있다. 어림잡아 30여 개의 물품이 가득했지만 매장 내...