Friday, May 29, 2009

從 Universal Binary 中移除非本機平台機械碼

以我的情況來說,在 PowerPC 平台上,執行檔中的 IA32/EM64T 的機械碼基本上是不需要的。在一些比較巨大的程式上,可以省下不少空間。

可以使用 ditto 這個內建的指令來從 Application Bundle 中移除非 PowerPC 機械碼:

ditto --rsrc --arch ppc /Applications/Camino.app /Applications/Camino-PPC.app

另一個相關的工具是 lipo 這個內建指令,不過他是用在 Mach-O binary 檔上的,不能直接給他 Application Bundle 資料夾去處理。