XNU內核編譯
阿新 • • 發佈:2019-01-11
building apple macosx 如果 msu platform developer 目錄名 下載 因為我用以前版本死活都沒有成功,更新系統,重新安裝xcode終於成功了。
系統版本
xcode版本
編譯版本
註意點是XNU要依賴幾個工具先得編譯那個幾個工具。編譯工具時會報頭文件找不到的問題。(應該這些工具是水果從大項目裏抽出來的應該不是一個單獨的項目)
解決方案有:
1.當前目錄有的把〈〉修改成""。
2.當前目錄沒有的去那5個目錄裏找(xnu 還有那4個要編譯的工具)
3.看源碼後面的註釋,因為有的頭文件有好多地方有,源碼中註釋會寫上它上層目錄名的。
同時編譯libdispatch時會去xcode裏找另外倆個文件
BSD.xcconfig 和PlatformSupport.xcconfig 在開源網有找我這裏下載下來了直接放到相應目錄:
https://github.com/haidragon/XnuBuildFiles 相關地址
https://developer.apple.com/download/more/
https://opensource.apple.com/
系統版本
xcode版本
編譯版本
註意點是XNU要依賴幾個工具先得編譯那個幾個工具。編譯工具時會報頭文件找不到的問題。(應該這些工具是水果從大項目裏抽出來的應該不是一個單獨的項目)
解決方案有:
1.當前目錄有的把〈〉修改成""。
2.當前目錄沒有的去那5個目錄裏找(xnu 還有那4個要編譯的工具)
3.看源碼後面的註釋,因為有的頭文件有好多地方有,源碼中註釋會寫上它上層目錄名的。
同時編譯libdispatch時會去xcode裏找另外倆個文件
BSD.xcconfig
https://opensource.apple.com/source/CoreOSMakefiles/CoreOSMakefiles-77/Xcode/BSD.xcconfig.auto.html
https://github.com/haidragon/XnuBuildFiles
編譯內核時有個工具庫沒有拷貝到相應的目錄下手動拷貝
最後效果是:
如果還是報各種找不到工具建議 用ports安裝那個dtrace 然後刪除重新來:
https://www.macports.org/install.php
https://stackoverflow.com/questions/16388028/always-have-much-xcrun-error-in-xnu-installingosx-10-8-3
其它全部按這個博客就行了:
https://0xcc.re/building-xnu-kernel-macosx-sierrra-10-12-x/
https://developer.apple.com/download/more/
https://opensource.apple.com/
XNU內核編譯