編譯 10.7.5 XNU(核心原始碼) 需要安裝 Xcode 4.1 版本 和額外的依賴項目
到 https://developer.apple.com/xcode/ 註冊一個 developer 帳號 下載 Xcode 4.1 版本安裝
依賴項目的編譯方法
下載依賴項目
- $ curl -s -O http://opensource.apple.com/tarballs/dtrace/dtrace-90.tar.gz
- $ curl -s -O http://opensource.apple.com/tarballs/bootstrap_cmds/bootstrap_cmds-78.tar.gz
解壓縮
- $ tar zxf dtrace-90.tar.gz
- $ tar zxf bootstrap_cmds-78.tar.gz
編譯 dtrace
- $ cd dtrace-90
- $ mkdir -p obj sym dst
- $ xcodebuild install -target ctfconvert -target ctfdump -target ctfmerge ARCHS="i386 x86_64" SRCROOT=$PWD OBJROOT=$PWD/obj SYMROOT=$PWD/sym DSTROOT=$PWD/dst
- $ sudo ditto $PWD/dst/usr/local /usr/local
- $ cd ..
編譯 bootstrap_cmds
- $ cd bootstrap_cmds-78
- $ mkdir -p obj sym dst
- $ make install RC_ARCHS="i386" SRCROOT=$PWD OBJROOT=$PWD/obj SYMROOT=$PWD/sym DSTROOT=$PWD/dst
- $ sudo ditto $PWD/dst/usr/local /usr/local
- $ cd ..
為方便起見 我將依賴項目都編譯好了 下載附件 10.7.5-xnu-build-tools 解壓縮安裝即可 10.7.5-xnu-build-tools/bootstrap_cmds-78.pkg 10.7.5-xnu-build-tools/dtrace-90.pkg
編譯核心 在桌面上新增一個資料夾 例如命名為 kernel 打開終端機
下載 XNU 原始碼
- $ curl -s -O http://opensource.apple.com/tarballs/xnu/xnu-1699.32.7.tar.gz
解壓縮
- $ tar zxf xnu-1699.32.7.tar.gz
編譯 XNU
編譯 32-bit 核心
- make ARCH_CONFIGS="I386" KERNEL_CONFIGS="RELEASE"
編譯 64-bit 核心
- make ARCH_CONFIGS="X86_64" KERNEL_CONFIGS="RELEASE"
編譯完成 32-bit 核心在 BUILD/obj/RELEASE_I386/mach_kernel 64-bit 核心在 BUILD/obj/RELEASE_X86_64/mach_kernel
|
留言列表