(10.8 - 10.8.5 通用)
以 10.8.5 為例
編譯 10.8.5 XNU(核心原始碼) 需安裝 Xcode 4.4 版本 和額外的依賴項目 (目前測試 Xcode 4.4 可正常編譯)
到 https://developer.apple.com/xcode/ 註冊一個 developer 帳號 下載 Xcode 4.4 版本安裝
安裝完 Xcode 記得安裝指令行工具(Command Line Tools)

一 依賴項目的編譯方法
下載依賴項目
- $ curl -O http://opensource.apple.com/tarballs/dtrace/dtrace-96.tar.gz
- $ curl -O http://opensource.apple.com/tarballs/AvailabilityVersions/AvailabilityVersions-4.2.tar.gz
解壓縮(其實點兩下就可以了)
- $ tar zxf dtrace-96.tar.gz
- $ tar zxf AvailabilityVersions-4.2.tar.gz
編譯 CTF tools
- $ cd dtrace-96
- $ mkdir -p obj sym dst
- $ xcodebuild install -target ctfconvert -target ctfdump -target ctfmerge ARCHS="x86_64" SRCROOT=$PWD OBJROOT=$PWD/obj SYMROOT=$PWD/sym DSTROOT=$PWD/dst
- $ sudo ditto $PWD/dst/usr/local /usr/local
- $ cd ..
編譯 AvailabilityVersions
- $ cd AvailabilityVersions-4.2
- $ mkdir -p dst
- $ make install SRCROOT=$PWD DSTROOT=$PWD/dst
- $ sudo ditto $PWD/dst/usr/local /usr/local
- $ cd ..
為方便起見 我依然把依賴項目都編譯好了 下載附件 10.8.x-xnu-build-tools 解壓縮安裝即可 10.8.x-xnu-build-tools/dtrace-96 10.8.x-xnu-build-tools/AvailabilityVersions-4.2
二 編譯核心
下載 XNU 原始碼
- $ curl -s -O http://opensource.apple.com/tarballs/xnu/xnu-2050.48.11.tar.gz
解壓縮
- $ tar zxf xnu-2050.48.11.tar.gz
編譯 XNU
- $ cd xnu-2050.48.11
- $ make ARCH_CONFIGS="X86_64" KERNEL_CONFIGS="RELEASE"
編譯完核心在 BUILD/obj/RELEASE_X86_64/mach_kernel |