我的環境是 Snow Leopard, 不知道在比較新的版本是不是還是這樣。
參考了 Build squashfs tools for Mac OS X 這篇描述了編譯 4.0 版的方法,不過因為我想用 4.2 的版本,所以我是手動作就是。
大致上要解決的問題包含:
- OS X 上未被定義的
FNM_EXTMATCH
常數 - 改引入
sys/sysctl.h
以供 unsquashfs.c 取得 CPU 數量 - OS X 上未被定義的一系列 l 開頭的 xattr 函數 (我猜應該也可以透過關閉 xattr 相關的功能避掉)
把 patch 丟到 Gist 上了,軟體跨平台真的是一件很藝術的事情。