로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 PC, 카메라, 스피커 등 IT 미니기기와 음향기기에 관해 교류하는 게시판입니다.

긴닉네임2003291156

미니 ARM iOS 앱을 x86 Mac 앱으로 포팅하기(부제: 애플의 ARM맥 빌드업)

Bitcode와 LLVM IR에 대해서는 예전에 잠깐 다룬 적이 있는데, 여기에 적기는 너무 방대한 개념이라 패스하겠습니다. 대충 바이너리인데 소스코드인 뭐 그런 개념입니다.

 

준비물: Bitcode 기능이 활성화 된 채로 컴파일 된 iOS용 앱

 

1. ebctool 명령어를 이용해 앱 패키지에서 Bitcode를 추출합니다.

clang -arch x86_64 -mios-version-min=12.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk *.o -o path/to/MyApp.app/MyApp

2. 추출한 bitcode를 이용해 x86용 바이너리를 빌드합니다.

for f in *; do clang -arch x86_64 -c -Xclang -disable-llvm-passes -emit-llvm -x ir -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk $f -o $f.o; done

 

3. 빌드한 바이너리를 패키지에 집어넣습니다.

clang -arch x86_64 -mios-version-min=12.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk *.o -o path/to/MyApp.app/MyApp

끝입니다. 물론 이대로 실행되는 건 아니고 스토리보드를 다시 짜는 등의 작업이 필요하겠지만 그것마저 작년 WWDC때 발표한 Marzipan 기술을 이용하면 순식간에 끝납니다(macOS의 미리 알림과 주식 등의 앱이 Marzipan을 이용해 설계되었죠).

참고로 이 Bitcode 기술은 15년에 발표되었고, iOS 스토어의 앱은 탑재 권장, tvOS/watchOS 앱은 탑재가 의무화 되어 있습니다. 대충 애플이 빌드업을 몇년전부터 해왔는지가 보여지는 부분이죠.

긴닉네임2003291156
2141 / 1260 / 2217 / 1864 / 2014 / 2093 / 1842 / 2190 / 2093 / 2094 / 1998
댓글
2
오토카모
1등 오토카모
2020.04.30. 19:39

5년뒤 

 

애플 천하통일

[오토카모]님의 댓글을 신고합니다. 취소 신고
Lime
2등 Lime
2020.04.30. 20:18

소프트웨어 기술의 중요성... 대단하긴 합니다,,

[Lime]님의 댓글을 신고합니다. 취소 신고
취소
번호 분류 제목 글쓴이 날짜 조회 수
공지 공지 사이트 이용 수칙 230228 수정 file admin 18.08.04 117634 13
핫글 미니 뭔가.. 최근 삼성 보면 뭔가 입니다. [12] 십사프로씁니다 24.07.26 1623 22
핫글 미니 미국쪽 IT 리뷰가 유독 특이한 점... [10] Stellist 24.07.26 1318 17
핫글 미니 렉카의 렉카의 렉카 [6] file 마키세크리스 08:30 1029 14
58361 미니 S20 Ultra 108MP 디지털 줌 6배 까지 [4] file 흡혈귀왕 20.05.07 435 0
58360 미니 C TO C, C TO 8 어디 제품 사용하시나요? [15] Track13 20.05.07 334 0
58359 미니 아이패드 미스터리 [8] file 점장 20.05.07 598 0
58358 미니 S20 Ultra 4K@30fps 비디오로 찍은 달 [10] file 흡혈귀왕 20.05.07 383 0
58357 미니 샤오미 슈퍼 웰페이퍼 멋있네요 [11] file 후루꾸루 20.05.07 1383 3
58356 미니 갤럭시 A51과 아이폰SE2 카메라 비교리뷰가 궁금하네요 [15] ssssy 20.05.06 683 0
58355 미니 안녕하세여 s20울트랍니다. [7] file 옆집남 20.05.06 459 4
58354 미니 벨벳과 A71(A51)동시 구매하시는 분 없겠죠? [2] 브니엘 20.05.06 303 0
58353 미니 음 제가 거의 벨벳 살뻔 했군요. [6] 아기건달_보노보노 20.05.06 494 0
58352 미니 서피스 여행용 허브 출시 [6] file 이타카노 20.05.06 617 0
58351 미니 아이폰SE + 탭 S6 Lite = LG 벨벳 [5] file 프로 20.05.06 606 0
58350 미니 서북3 발매일은 아직 안나왔죠? [1] 쥐가찍찍 20.05.06 147 0
58349 미니 IT관련이라서 일단 미게에 올리는 거성사태 결말.ppomppu [10] file 갤럭시S2 20.05.06 717 0
58348 미니 서피스에 대한 평이 안 좋은데 왜 하드웨어 명가인건가요? [16] 딸기따알기 20.05.06 626 0
58347 미니 울트라 5.5에 또 테스트 빌드업했네요 [7] file aleji 20.05.06 383 0
58346 미니 SE2가 정말 감흥이 없긴 하네요 [3] file 쥐쥐코리아 20.05.06 666 0
58345 미니 MS가 DMA 문제 때문에 썬더볼트를 안 넣는다죠..? [6] WayBack 20.05.06 294 0
58344 미니 서피스북3는 아직도 저전압 CPU를 쓰네요 ; [7] Stellist 20.05.06 432 0
58343 미니 LG 벨벳 vs. iPhone SE vs. 갤럭시 A51 5G 긱벤치 성능 비교 [15] file 프로 20.05.06 1166 0
58342 미니 서피스는 폐기물입니다.. [10] 쿄로쿄러간다 20.05.06 584 0
58341 미니 서피스북3 가장 아쉬운건 [5] sands 20.05.06 245 0
58340 미니 서피스 북 컨셉의 갤럭시 북.. 기대를 접어야 할까요 [6] Lime 20.05.06 322 0
58339 미니 MS에서 밝히는 서피스북에 썬더볼트 안넣는 이유 [3] 스퀴니 20.05.06 728 0
58338 미니 이번 서피스들은 전혀 끌리지않네요.. [10] 똥또로똥 20.05.06 352 0
58337 미니 서피스북 3 이번에도 썬더볼트 없네요. [4] WayBack 20.05.06 337 0

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

게시판 타이틀 하단에 출력 됩니다.

일반 게시판, 리스트 게시판, 갤러리 게시판에만 해당

2. 글 목록

기본 게시판, 일반 게시판, 썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

기본 10명 (11명 일 경우, XXXXX 외 1명으로 표시)

5. 댓글 설정

일정 수 이상의 추천을 받은 댓글에 표시를 합니다.

6. 글 쓰기 화면 설정

글 쓰기 폼에 미리 입력해 놓을 문구를 설정합니다.

서버에 요청 중입니다. 잠시만 기다려 주십시오...