lipo コマンドを使う。
lipo Terminal.bak -remove i386 -output Terminal
Terminal.bak から i386 のバイナリを削除してファイル名 Terminal で出力する。
fat file の検索
i386 のバイナリを有するファイルを検索する。
find . -type f -perm -55 -exec file {} ; | grep i386 | sed 's/.for arch.*$//g'ppc を探したければ grep ppc とする。
Firefox の例
fatbinary=(
./components/libjsd.dylib
./components/libmyspell.dylib
./components/libspellchecker.dylib
./components/libxpinstall.dylib
./libfreebl3.dylib
./libmozjs.dylib
./libnspr4.dylib
./libnss3.dylib
./libnssckbi.dylib
./libplc4.dylib
./libplds4.dylib
./libsmime3.dylib
./libsoftokn3.dylib
./libssl3.dylib
./libxpcom.dylib
./libxpcom_compat.dylib
./libxpcom_core.dylib
./libxpistub.dylib
#./plugins/Default Plugin.plugin/Contents/MacOS/Default Plugin
./plugins/JavaEmbeddingPlugin.bundle/Contents/MacOS/JavaEmbeddingPlugin
./plugins/MRJPlugin.plugin/Contents/MacOS/MRJPlugin
./updater.app/Contents/MacOS/updater
./xpicleanup
)
for name in ${fatbinary[@]}
do
backupfile="${name}.bak"
cp ${name} ${backupfile}
lipo ${backupfile} -remove i386 -output ${name}
echo $name
done