*적용중인 도장
이 글에서는 부트로더와 켁스트를 DevBuild하는 법을 알아보겠습니다
제가 모르는점도 많으니 지적해주시기 바랍니다.
우리 엑팔에는 https://x86.co.kr/devbuild Devbuild게시판이 있으며 JGP @JGP 5002737 님이 게시물을 올리고 있습니다. 이 게시판을 사용하는것이 훨씬 빠르고 편하게 자료를 얻을 수 있으며, 이 글에서는 혼자 도전해보고 싶거나 게시판에 올라오지 않는 부트로더/켁스트의 빌드를 하고 싶은 분들을 위해 작성하였습니다
* 맥에서 사용하는 켁스트/부트로더를 빌드하기 위해 맥/해킨토시가 필요합니다
* 빌드는 xcode11/catalina10.5.5에서 진행하였습니다.
1. 소스코드 다운로드하기
소스코드는 세가지의 방법을 다운로드 할 수 있습니다.
1. 직접 다운로드하기-가입 필요 x(비추)
1. github 사이트에 들어가 우측 상단의 검색 버튼을 통해 원하는 부트로더, 켁스트를 검색한다.(ex: opencorepkg, cloverbootloader, lilu, applealc 등)
2. 초록색 code버튼을 누르고 download zip버튼을 클릭해 파일을 다운받고 압축을 푼다.
2. 터미널 커맨드 사용하기-가입 필요x(추천)
1. github 사이트에 들어가 우측 상단의 검색 버튼을 통해 원하는 부트로더, 켁스트를 검색한다.(ex: opencorepkg, cloverbootloader, lilu, applealc 등)
2. 초록색 code버튼을 누르고 클립보드 버튼을 클릭해 git주소를 복사한다.
3. 터미널을 열어 다음을 입력한다(cd desktop(바탕화면)/documents 명령어를 통해 폴더를 이동하는것을 추천합니다)
git clone "복사한 주소"
*voodooI2c 및 voodooI2c의 종속 켁스트들은 클론 할 때 조심해야 합니다
하위모듈을 같이 불러오기 위해 다음 명령어를 추가로 실행합니다.
cd "해당 켁스트(ex: voodooI2c")
git submodule init
git submodule update
*에러 메시지가 뜨는 분들은 git이 설치되어있지 않아 그럴수 있습니다(기본적으로 mac에는 git이 깔려있는걸로 알고 있습니다만..)
다음을 통해 git을 설치해주세요
1. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
2. brew install git
3. github desktop 이용하기 - 가입 필요 x (가장 추천)
1. 아래의 링크에서 github desktop 프로그램을 다운아 설치한다
2. github 사이트에 들어가 우측 상단의 검색 버튼을 통해 원하는 부트로더, 켁스트를 검색한다.(ex: opencorepkg, cloverbootloader, lilu, applealc 등)
3. 초록색 code버튼을 누르고 클립보드 버튼을 클릭해 git주소를 복사한다.
4. github desktop프로그램을 열고 clone repository를 클릭한 후 url항목으로 이동하여 복사한 링크를 붙여넣는다(위치는 본인이 지정)
*fetching기능이라고 해서 변경사항을 업데이트하는 기능도 있지만 저는 찜찜해서 다시 받았습니다. 한번 사용해보셔도 좋아요
2. XCODE다운로드하기
부트로더, 켁스트를 빌드하는데 거의 필수입니다.(원래는 ios, ipados, macos, watch os, tv os 를 위한 프로그램을 개발하는 개발자 도구)
https://apps.apple.com/kr/app/xcode/id497799835?mt=12
1. 위 링크에서 다운을 받는다.(오래걸림)
2. 실행을 시킨후 install을 클릭한후 비밀번호를 입력한다.(조금 시간 걸림)
3. 부트로더, 켁스트 빌드하기
이 항목은 방법에 따라 오픈코어 부트로더, 클로버 부트로더, lilu, lilu를 필요로 하는 켁스트들, 그 이외의 켁스트들로 나누어 설명하겠습니다.
1) 오픈코어 부트로더
1. 오픈코어 부트로더 폴더로 이동한다.
2. build_oc.tool을 클릭한다.
3. Y를 입력한다.
4. 비밀번호를 입력한다.
5. [프로세스 완료됨]이라고 뜨면 Binaries폴더로 이동한다.
6. Release(엑팔의 Devbuild버전)과 Debug(엑팔의 Debug버전)중 하나를 선택해 압축을 풀어 사용한다(일반적인 사용자라면 저는 release추천합니다. 둘이 기능상 차이 없어요)
+ 제가 업데이트 하는 내용들
Boot>Bootx64.efi
OC>opencore.efi
OC>Drivers>opencanopy, openruntime.efi
OC>Bootstrap.efi(?)
2) 클로버 부트로더
1. 클로버 부트로더 폴더로 이동한다,
2. buildme를 클릭한다.
3. "3"을 입력한다
4. 자동으로 열리는 폴더에서 clover_r버전명.pkg을 사용한다.
3)lilu켁스트 빌드하는법
1. lilu 폴더로 이동한다.
2. lilu.xcodeproj을 클릭한다
3. lilu를 클릭하고 edit scheme을 클릭한다.
4. release를 선택한다.
5. 창을 닫고 좌측 상단의 재생버튼(빌드버튼)을 누른다.
6. build succed문구가 뜨면 메뉴바에서 Xcode>preference를 클릭한다
7. location항목에서 derived Data밑에 밑줄처진(아래 사진상에서) 저 부분으로 이동한다.
8. 앞에 lilu라고 적힌 폴더로 이동한다.
9. build>products>Releases폴더로 이동한다.
10. lilu.kext를 사용한다.
4) lilu를 필요로 하는 켁스트 빌드하기
lilu를 필요로하는 대표적인 켁스트들에는 AppleALC, WhatEverGreen, VirtualSMC가 있으며 그 이외에도 있을 수 있으니 잘 확인한다.(이 글에서는 AppleALC, VirtualSMC를 동시에 다룰것이다)
이 켁스트들의 빌드르 위해서는 우선 lilu를 빌드해야 한다.
1. lilu 폴더로 이동한다.
2. lilu.xcodeproj을 클릭한다
3. lilu를 클릭하고 edit scheme을 클릭한다.
4. Debug를 선택한다.
5. 창을 닫고 좌측 상단의 재생버튼(빌드버튼)을 누른다.
6. build succed문구가 뜨면 메뉴바에서 Xcode>preference를 클릭한다
7. location항목에서 derived Data밑에 밑줄처진(아래 사진상에서) 저 부분으로 이동한다.
8. 이름 앞쪽에 lilu라고 적힌 폴더로 이동한다.
9. build>products>Debug폴더로 이동한다.
10. lilu.kext를 복사한다.
11. 각 켁스트들의 폴더로 이동한다.
12. 아까 복사한 lilu켁스트를 붙여넣는다.(반드시 Debug버전이여야 합니다)
13. 켁스트의 이름.xcodeproj파일을 클릭한다
14. 켁스트들의 이름>edit scheme을 클릭한다(VirtualSMC의 경우에는 SMCProcessor와 같은 부속 켁스트들을 하나하나 빌드해주셔야합니다)
15. release를 선택한다.
16. 창을 닫고 좌측 상단의 재생버튼(빌드버튼)을 누른다.
17. build succed문구가 뜨면 메뉴바에서 Xcode>preference를 클릭한다
18. location항목에서 derived Data밑에 밑줄처진(아래 사진상에서) 저 부분으로 이동한다.
19. 이름 앞쪽에 켁스트의 이름이 적힌 폴더로 이동한다.
20. build>products>release폴더로 이동한다.
21. 켁스트들을 사용한다.
4)그이외의 켁스트들
그 이외에는 켁스트가 정말 많지만 저는 설명을 위해 Intelmausiethernet켁스트를 빌드해보겠습니다.
1. 각 켁스트들의 폴더로 이동한다.
2. 켁스트의 이름.xcodeproj파일을 클릭한다
3. 켁스트들의 이름>edit scheme을 클릭한다
4. release를 선택한다.
5. 창을 닫고 좌측 상단의 재생버튼(빌드버튼)을 누른다.
6. build succed문구가 뜨면 메뉴바에서 Xcode>preference를 클릭한다
7. location항목에서 derived Data밑에 밑줄처진(아래 사진상에서) 저 부분으로 이동한다.
8. 이름 앞쪽에 켁스트의 이름이 적힌 폴더로 이동한다.
9. build>products>release폴더로 이동한다.
10. 켁스트들을 사용한다.
+
VoodooI2C나 VoodooRMI같이 Submodule이 포함된 경우에는 —recursive 옵션을 포함한 git 커맨드로 clone해 와야 합니다. 일반적인 방법으로 클론하신 경우에는 아래 커맨드로 submodule을 pull 해올수도 있기도 합니다
git submodule init
git submodule update
좋은 정보 감사드립니다.
알고 있었던 것이 조금 부족했는데 이 글을 보고 무엇이 잘못 되었는지 알게 되었습니다.
즐거운 하루 되세요.
"님의 댓글"
이 댓글을 신고 하시겠습니까?
제목 | 조회 수 | 날짜 | 글쓴이 |
---|---|---|---|
macOS Sequoia 15.0.1 24A348 정식버젼 고스트 이미지 OC 1.0.2 ft: 전체공개 +28 | 763 | 24.10.1121:10 | 좌절금지 |
오픈코어 1.0.2 +22 | 541 | 24.10.0900:22 | 줌바이퍼 |
[중급편] 노트북 해킨 +16 | 1365 | 24.07.1219:19 | Stultus |
macOS Ventura 13.7 22H123 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체 공개 +17 | 560 | 24.09.1917:09 | 좌절금지 |
macOS Sonoma 14.7 23H124 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체공개 +31 | 889 | 24.09.1723:58 | 좌절금지 |
[초급편] 문제 스스로 해결하기 +20 | 3975 | 24.03.2920:07 | Stultus |
[입문편] 첫 해킨 길라잡이 +40 | 5032 | 24.01.1218:54 | Stultus |
[필독 - 안정화] macOS 해킨토시 설치 후 안정화 작업 목록 및 글타래 모음 총정리 📋 +67 | 5.1만 | 23.01.0913:39 | shl628 |
458 | 24.10.1412:27 | shl628 | |
592 | 24.10.1316:00 | 수박 | |
763 | 24.10.1121:10 | 좌절금지 | |
541 | 24.10.0900:22 | 줌바이퍼 | |
1365 | 24.07.1219:19 | Stultus | |
1170 | 24.10.0500:31 | 줌바이퍼 | |
562 | 24.10.0410:49 | Tamy | |
447 | 24.09.2808:22 | Tamy | |
879 | 24.09.2321:32 | Stultus | |
590 | 24.09.1722:40 | 좌절금지 | |
556 | 24.09.1708:13 | 김경석 | |
760 | 24.09.1504:35 | Tamy | |
578 | 24.09.1319:18 | Stultus | |
694 | 24.09.1019:44 | 치토 | |
448 | 24.09.0112:54 | 해킨도전자 | |
536 | 24.08.3115:34 | 머핀X | |
300 | 24.08.2601:42 | 화정큐삼 | |
300 | 24.08.2422:59 | 하나브 | |
316 | 24.08.2316:25 | 화정큐삼 | |
411 | 24.08.1810:56 | CanBe | |
358 | 24.08.1800:04 | 화정큐삼 | |
297 | 24.08.1722:03 | 화정큐삼 | |
416 | 24.08.1419:58 | Stultus | |
375 | 24.08.1311:26 | 오디세이 | |
253 | 24.08.1115:46 | 좌절금지 | |
231 | 24.08.1022:46 | Stultus | |
129 | 24.08.0609:17 | RogerT | |
86 | 24.08.0523:34 | jbhlyk | |
260 | 24.08.0521:10 | 수인과윤슈 | |
603 | 24.08.0221:07 | Stultus | |
389 | 24.07.3019:12 | Tamy | |
301 | 24.07.2112:43 | Stultus | |
275 | 24.07.1122:47 | Stultus | |
211 | 24.07.1020:44 | Stultus | |
248 | 24.07.0921:44 | Stultus | |
370 | 24.07.0820:57 | Stultus | |
381 | 24.07.0721:25 | Stultus | |
357 | 24.07.0604:41 | bsiugr | |
644 | 24.07.0509:56 | 애플브리크 | |
470 | 24.06.2723:24 | 치토 | |
849 | 24.06.1120:40 | Stultus | |
1411 | 24.04.3022:28 | Stultus | |
1024 | 24.04.2718:46 | Stultus | |
3084 | 24.04.1312:15 | Stultus | |
3040 | 24.04.0712:49 | Stultus | |
1537 | 24.04.0619:59 | Stultus | |
1517 | 24.04.0613:43 | Stultus | |
2660 | 24.04.0521:57 | Stultus | |
3975 | 24.03.2920:07 | Stultus | |
1457 | 24.03.2823:08 | Stultus | |
1176 | 24.03.2322:35 | Stultus | |
785 | 24.03.2123:12 | Stultus | |
650 | 24.03.0818:26 | Stultus | |
1188 | 24.02.1621:54 | Stultus | |
1005 | 24.01.2321:47 | Stultus | |
5032 | 24.01.1218:54 | Stultus | |
911 | 24.01.1121:20 | Stultus | |
971 | 24.01.0921:31 | Stultus | |
1458 | 24.01.0822:35 | Stultus | |
4624 | 23.11.0920:54 | Stultus | |
6699 | 23.10.2723:10 | Stultus | |
6558 | 23.10.2722:40 | Stultus | |
7189 | 23.10.2100:08 | Stultus | |
3516 | 23.10.1700:57 | Stultus | |
4842 | 23.09.2707:11 | Stultus | |
9115 | 23.09.1022:47 | Stultus | |
9490 | 23.08.2521:36 | Stultus | |
9795 | 23.08.2313:42 | Stultus | |
3964 | 23.08.2216:27 | Stultus | |
9999 | 23.08.2115:14 | Stultus | |
1.1만 | 23.08.2114:43 | Stultus | |
1.6만 | 23.07.1318:42 | Stultus | |
1.2만 | 23.07.0619:38 | Stultus | |
1.7만 | 23.05.2512:02 | Stultus | |
2.3만 | 23.04.0517:11 | Stultus | |
5818 | 23.03.2800:39 | Stultus | |
1.4만 | 23.03.2313:35 | Stultus | |
3.2만 | 23.03.1211:40 | Stultus | |
4.1만 | 23.03.0621:32 | Stultus | |
5.1만 | 23.01.0913:39 | shl628 |
제가 빌드하는 방법은 아니지만 올려주신 빌드 방법이 정석입니다.
저는 매일 빌드를 하는 편이라 스크립트를 짜서 쓰고 있답니다 ㅎㅎ
파일만 실행해주면 알아서 파일명도 변경하고~ 원드라이브 폴더에 복사해줘서 자동 동기화 되도록 해뒀지요