로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 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 117778 13
핫글 미니 삼페가 국내 NFC 보급이 미진한 거에 영향을 주긴 했다고 생각하는데 [15] Niflheimr 11:21 1001 20
핫글 미니 대충 뇌 정상화가 이루어진 후의 폴드6 후기 [2] update 가마 11:21 682 12
핫글 미니 스파이더 엘리트가 집에 왔습니다 [7] file 우리애는물어요 19:57 283 8
59119 미니 노트 10+ 업데이트!?! [8] file 브니엘 19.10.23 362 0
59118 미니 10시에 딱 긴급패치 나오면 [7] 브니엘 19.10.21 362 0
59117 미니 미세 도트패턴이 범인이라면 진짜 지문과 달리 거의 간격이 일정하잖아요 [3] aleji 19.10.17 362 0
59116 미니 TwoUI 최적화만 잘된다면 진짜 좋을것 같네요. [1] MrHS 19.10.12 362 0
59115 미니 젠3정보 일부공개 file 바보중 19.10.05 362 0
59114 미니 MKBHD 아이폰 프로 리뷰 떴네요 [7] 루딱이 19.09.20 362 1
59113 미니 갤럭시 와이드 쓰던 친구가 노트10으로 기변했네요 [4] 플래그쉽GU 19.09.16 362 0
59112 미니 노트10 구매하신 분들 5만원 특전에서 어떤거 고르셨나요? [9] file deux11 19.09.15 362 0
59111 미니 중국에서 아이폰11시리즈의 초기판매량은 노트10시리즈 100배 [8] 범죄자호날두 19.09.14 362 0
59110 미니 그나저나 아이폰 긱벤치 뭔가 이상하지 않나요 [9] file 바보중 19.09.12 362 0
59109 미니 v50후기 [2] 소소 19.09.05 362 0
59108 미니 무충 삼성 저렴이로 샀습니다 [12] file Chrop 19.09.05 362 0
59107 미니 놋철 9월 첫 펌웨어가 등장했습니다 + 게임런처x디스코드 업데이트 [1] file N935S 19.09.03 362 0
59106 미니 윈10 새로운 태블릿 환경 [1] 기변증 19.08.30 362 0
59105 미니 애플페이가 들어온다면 케이뱅크가 제일 유력하지않겠습니까 [3] AGRS 19.08.20 362 0
59104 미니 자급제는 하루 먼저 계통합니다 [6] file aleji 19.08.19 362 0
59103 미니 티맥스 OS, 공개 배포 시작 [6] 6_inch 19.08.16 362 0
59102 미니 폭스콘 ; 인도에서 아이폰 생산개시 [4] file 갤러리별 19.08.12 362 0
59101 미니 사전예약 사은품 떳나봐요 [2] file ki-hun 19.08.08 362 0
59100 미니 이번주가 언팩이군요 [3] 으냥 19.08.05 362 0
59099 미니 S10 플러스 쓰시는 분들 배터리 얼마나 가나요? [10] 내분점 19.08.04 362 0
59098 미니 전 놋10, 놋11 테크트리 타렵니다 [5] 갤러리별 19.08.02 362 0
59097 미니 오늘의 지름 [1] file Chrop 19.07.28 362 0
59096 미니 갤십 새 충전애니메이션 다 좋은데... [3] 난민 19.07.02 362 0
59095 미니 도시바 정전 여파가 3분기 NAND공급의 16.5%를 날려버릴 수준이라고... [9] ARMCC 19.06.29 362 0

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

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

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

2. 글 목록

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

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

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

5. 댓글 설정

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

6. 글 쓰기 화면 설정

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

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