로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 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년뒤 

 

애플 천하통일

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

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

[Lime]님의 댓글을 신고합니다. 취소 신고
취소
번호 분류 제목 글쓴이 날짜 조회 수
공지 공지 사이트 이용 수칙 240809 수정 file admin 18.08.04 118452 13
핫글 미니 삼성은 개인주의적인 기업 문화랑 임원진 개선 못하면 내핵까지 삽질하겠네요 [10] 인텔 12:29 1096 17
핫글 미니 이석채 전 KT 회장 이거 말 진짜일까요? [21] update 던힐6m 16:35 915 12
핫글 미니 컬러스케일 이거는 좀 그렇네요 [16] update Beoplay31 01:51 2008 12
57336 미니 드론특구라는걸 지정한다는데... [3] 팝카드있으세요 20.04.30 192 0
57335 미니 MS 호환성 하니까 갤럭시S 스냅앤고 생각나네요 MrHS 20.04.30 163 1
57334 미니 엑시노스 1000 AMD 루머의 이동...? [4] 스퀴니 20.04.30 509 0
57333 미니 픽셀4a 출시일자 [15] file Aimer 20.04.30 392 0
57332 미니 갤워치도 슬슬 얘기가 나오고있나보군요 [6] 똥또로똥 20.04.30 310 0
57331 미니 엑시노스1000에 amd꺼 쓴다는 루머 [5] 치즈스콘 20.04.30 902 0
미니 ARM iOS 앱을 x86 Mac 앱으로 포팅하기(부제: 애플의 ARM맥 빌드업) [2] 긴닉네임2003291156 20.04.30 502 0
57329 미니 킹성뮤직 셔플버턴 왜 이렇게 됐읍니까 [5] file aleji 20.04.30 340 0
57328 미니 Mac에 전방위적으로 ARM이 탑재되진 않겠죠. [15] Aimer 20.04.30 241 0
57327 미니 혹시 리뷰 등에서 화면 색온도와 밝기 측정하는 장비는 뭐라고 부를까요? [13] 불쌍한기아맨 20.04.30 230 0
57326 미니 사용자 휴대폰 앱 딱 하나 아쉬운거라면 [9] [성공]함께크는성장 20.04.30 258 0
57325 미니 5nm 관련한 삼성한테 가장 좋은 그림은 [15] sands 20.04.30 418 0
57324 미니 MS의 친안드 협력 정책은 정말 좋은 결정한거죠 [7] 프리즘스톤 20.04.30 283 0
57323 미니 <아이폰 SE 2세대 구매목적 설문조사> JamesBlake 20.04.30 181 0
57322 미니 맥이 ARM으로 이주를 한다면 [6] Terrapin 20.04.30 216 0
57321 미니 MS가 계속 안드 진영과 협력한다면 [4] [성공]함께크는성장 20.04.30 214 0
57320 미니 MS가 안드로이드 호환성에 공들이고 있네요 [10] [성공]함께크는성장 20.04.30 451 0
57319 미니 커널형 이어폰 정착용이란게 이런 거였군요 [4] file 연년생 20.04.30 676 0
57318 미니 그래도 지금 OneUI는 삼성의 엄청난 노력과 자본 투입의 결과물이죠. [29] file 비온날흙비린내 20.04.30 1407 3
57317 미니 섬성이 미코를 눈팅 할지는 모르겟지만 울트라 화이트... [8] file 맛폰은디지바이스 20.04.30 549 0
57316 미니 아수스 르누아르 노트북 가성비 ㅎㄷㄷ하네요 [6] 팝카드있으세요 20.04.30 1364 0
57315 미니 갤럭시 펌웨어 업데이트 창 좀 아쉬운게 [19] file 프리즘스톤 20.04.30 585 0
57314 미니 르누아르 노트북들 보면... 인헤리턴스 20.04.30 199 0
57313 미니 삼성브라우저 질문입니다 전문가 20.04.30 119 0
57312 미니 원플이 삼성처럼 커스텀 많이 들어가면 [5] [성공]함께크는성장 20.04.30 251 0

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

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

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

2. 글 목록

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

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

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

5. 댓글 설정

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

6. 글 쓰기 화면 설정

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

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