ユニバーサルバイナリ作成用シェルスクリプト

iPhone用にビルドしたライブラリは実機用(armv6/armv7)とシミュレータ用(i386)のユニバーサルバイナリとして作成しておくと使い勝手が良いです。 その分ビルドは面倒になるのですが。。

僕は通常以下のようにしてユニバーサルバイナリを作成してます。

  1. まずprefixをそれぞれ ~/dev/iphone/lib/curl-7.20.1-armv6 ~/dev/iphone/lib/curl-7.20.1-armv7 ~/dev/iphone/lib/curl-7.20.1-i386 などとしてそれぞれのアーキテクチャ用にビルドをする
  2. 適当に書いた bundle.sh でユニバーサルバイナリ化

この bundle.sh は上の例だと

./bundle.sh ~/dev/iphone/lib/curl-7.20.1

として実行すると ~/dev/iphone/lib/curl-7.20.1-armv6 ~/dev/iphone/lib/curl-7.20.1-armv7 ~/dev/iphone/lib/curl-7.20.1-i386 が全部がっちゃんこした ~/dev/iphone/lib/curl-7.20.1 ができるという寸法です。

この方法だとまだ3つ分手動でビルドするのがめんどくさいので、そこも自動化したいところですね。

by typester / at 2010-07-27T14:52:00 / osx · iphone / Comments(0)