
pongoOS
Apple 보드용 사전 부트 실행 환경으로, checkra1n 기반으로 구축되었습니다.
make all 실행ld64 및 cctools의 strip 설치.
echo 'deb https://assets.checkra.in/debian /' | sudo tee /etc/apt/sources.list.d/checkra1n.list
sudo apt-key adv --fetch-keys https://assets.checkra.in/debian/archive.key
sudo apt-get update
sudo apt-get install -y ld64 cctools-strip
make all 실행clang, ld64 또는 cctools-strip에 기본 이름/경로가 없는 경우 해당 호출을 변경해야 합니다. 참고로 기본 변수는 다음과 동일합니다:
EMBEDDED_CC=clang EMBEDDED_LDFLAGS=-fuse-ld=/usr/bin/ld64 STRIP=cctools-strip make all
Makefile은 build/ 디렉토리에 네 개의 바이너리를 생성합니다:
Pongo - 메인 PongoOS의 Mach-OPongo.bin - 위와 동일하지만, 점프할 수 있는 베어 메탈 바이너리checkra1n-kpf-pongo - checkra1n 커널 패치파인더, Pongo 모듈 (Mach-O/kext)PongoConsolidated.bin - PongoOS와 KPF가 하나의 바이너리로 병합됨checkra1n -k Pongo.bin # Pongo 셸로 부팅, KPF 사용 불가
checkra1n -k PongoConsolidated.bin # KPF 자동 실행 후 XNU로 부팅
checkra1n -k PongoConsolidated.bin -p # KPF 로드, 하지만 Pongo 셸로 부팅
풀 리퀘스트를 제출함으로써, 귀하는 귀하의 기여를 MIT 라이선스에 따라 라이선스하는 데 동의하며, 그렇게 할 권리가 있음을 인증합니다.
그렇게 라이선스할 수 없는 타사 코드를 가져오려는 경우, 이를 눈에 띄게 표시하여 당사가 적절히 평가할 수 있도록 해야 합니다.
src/에 있습니다.
tools/에 있습니다.aarch64-none-darwin에 있습니다.
example/에 있습니다.scripts/에 있습니다.
pongoterm이 포함됩니다.checkra1n/kpf에 있습니다.
checkra1n/kpf-test에서 빌드할 수 있습니다 (arm64에서만 실행 가능).