2月に買ったMacBook Airをずっと放置していて、
ようやくセッティングをしているのだけれど、
PHPのGD ExtensionでIntel Mac特有の問題に当たったのでメモしておこう。
Adding GD Library for Mac OS X Leopard を参考にしたので、
詳しいインストール手順はこちらをどうぞ。
必要なもの
X11 SDKが必要で、
Xcode Developer Toolsをインストールしておけば、
たぶん一緒に入っているはず。
MacPortsのライブラリを使わないでコンパイルする
GD Extensionはコンパイル時に
libjpeg、libpng、freetypeが必要になるけど、
PPC Macの場合はMacPortsからインストールしたものでOKだけど、
Intel Macの場合は駄目っぽいので、
使わないでコンパイルする。
libjpegのインストール
libjpegが足りないのでインストールしておく。
-
本家のlibjpegが落ちていたので、
MacPorts経由でソースを持ってきた。sudo port install jpeg sudo port uninstall jpeg cp /opt/local/var/macports/distfiles/jpeg/jpegsrc.v6b.tar.gz .
-
jpegsrc.v6b.tar.gzを解凍してディレクトリに移動。
cd jpeg-6b
-
/usr/share/libtool 以下の2つのファイルをコピーしておく。
cp /usr/share/libtool/config.sub . cp /usr/share/libtool/config.guess .
-
64-bit環境に設定。
MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" CXXFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" LDFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load" ./configure --enable-shared
-
インストール先のディレクトリを作成。
mkdir -p /usr/local/include mkdir -p /usr/local/bin mkdir -p /usr/local/lib mkdir -p /usr/local/man/man1
-
libjpegをコンパイル・インストール。
make sudo make install
GD Extensionのインストール
Apple提供のDarwin Sourceを利用する。
-
PHPのソースをダウンロード。
新しいものがあるので、
http://www.opensource.apple.com/darwinsource/10.5.2/apache_mod_php-44/の、
php-5.2.5.tar.bz2を使ってみた。 -
php-5.2.5.tar.bz2を解凍してGDのディレクトリに移動。
cd php-5.2.5/ext/gd
-
64-bit環境に設定。
libjpegはインストールした /usr/local/lib を指定、
それ以外は /usr/X11R6 を指定。phpize MACOSX_DEPLOYMENT_TARGET=10.5 CFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp" CCFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" CXXFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -g -Os -pipe" LDFLAGS="-arch ppc -arch ppc64 -arch i386 -arch x86_64 -bind_at_load" ./configure --with-zlib-dir=/usr --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/X11R6 --with-freetype-dir=/usr/X11R6 --with-xpm-dir=/usr/X11R6
-
GDをコンパイル・インストール。
make sudo make install
PDO MySQL Extensionも入れたかったのだけど、
GDと同じ様に、MacPortsのMySQLでは駄目っぽくて、
面倒くさいので断念した。