GDライブラリの追加インストール

Max OSX 10.5には、PHPのGDライブラリがインストールされていない、ので、Drupalでエラーが出る。
GDライブラリを追加インストールする。


今回はこちらを参照:

http://aeolus.jp/higuma/2008/10/d-12.html
http://blogs.yahoo.co.jp/yet_another_mac/27661860.html

1.
Max OSXのバージョンを確認。最新版でなければ、最新版にしておいたほうがよいかな。
今回は、10.5.7。

2.
Open Source - Releases
で、Max OSXの対応するバージョンのリンクをクリック。

遷移したページで、
apache_mod_php-xx.x
を探してダウンロードする。
Safari4だと、「ダウンロード」フォルダに「apache_mod_php-xx.x.tar」が落ちてくる。

3.
ダウンロードしたファイルを展開する。
とりあえず、ダブルクリックすると、展開が始まる。

4.
ターミナルを起動して、展開されたディレクトリに移動。
今回は、


cd /Users/(ユーザー名)/Downloads/apache_mod_php-44.2/



(一気に移動してもいいんですが)
この中に「php」というディレクトリがあって、その中のGDライブラリのディレクトリに移動する。


cd php/ext/gd



5.


phpize


と入力してEnter。
以下のようなものが表示される。


Config for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519



6.
64bit( PowerPC G5 および その他 intel Mac )なので、
以下を1行で入力(長くて驚き)。

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


Enterキーを押してコンパイル開始。
ここでエラーが出る場合は、100%、libjpegのインストールが誤っている(風ブログさん)、そうで、引っかかりました。
最後に以下のような行が。

cnfigure: error: libjpeg.(also)not found.



7.
ここで、風ブログさんのこちらを参照:

http://aeolus.jp/higuma/2007/10/d-6.html

http://www.ijg.org/files/
から、
jpegsrc.v7.tar.gz
をクリックしてダウンロード。
「ダウンロード」フォルダに「jpegsrc.v7.tar」が落ちてくる。

「jpegsrc.v7.tar」をダブルクリックして解凍。
風ブログさんの記述に従い、「install.txt」を開いてみると、

Copyright (C) 1991-2009, Thomas G. Lane, Guido Vollbeding.

バージョン上がったのが今年ですか。
「makeproj.mac」があるので、いきなりmakeでもいけますかね。
しかし「install.txt」にそれっぽい記述も見当たらず...。
風ブログさんの記事はv6の場合だけど、バージョンは関係なさそうだから、この手順でやっておくのが無難ですか。
続きはまた後日。


というわけで続き。
前回の記述から72時間ほど経過。
少し間をおいたので気分的に少し余裕をもって。
エントリーを分けると後で探すときに苛つきそうなので、続いて記述。


8.
「jpegsrc.v7.tar」を解凍してできた「jpeg-7」ディレクトリの中をもう1度確認。
「ltmain.sh」というファイルがある。このままいけるかもしれないけど、やはりOS X純正のものを使うことに。
風ブログさんのシンボリックリンクを張るやり方を試す。
xterm(実は最初からこれ使ってる)を起動して、



cd /Users/(ユーザー名)/Downloads/jpeg-7/



ここに、/usr/bin/glibtoolのシンボリックリンクlibtoolを作成


ln -s /usr/bin/glibtool libtool



9.
で、この後configureするためのコマンドは?
というわけで、こちらを参照:

http://oldcrow27.blog120.fc2.com/blog-entry-4.html


./configure --prefix=/usr/local --enable-static --enable-shared


をxtermで実行してconfigureできたっぽい。



10.
そして、


make


ん、できた。



11.
続けて、


sudo make install


終わった。ほんとか。



12.
で、手順4.からやり直す。
手順5.でいろいろ出てくるなぁ。


cp: /Users/(ユーザー名)/Downloads/apache_mod_php-44.2/php/ext/gd/build/mldep.awk: Permission denied


とか。
前回の作業時に作成されたファイル、ディレクトリがだめか。


とりあえず、そのままconfigureすると、またエラーが。


error: Problem with libjpeg.(also). Please check config.log for more information.


config.logを見てもよくわからず。JPEG 7の問題なのか。
いろいろ探してみると、
こちらで

http://blog.faro.main.jp/?eid=849869

MAX OSX PORTSというのが紹介されていた。

http://ethan.tira-thompson.org/Mac_OS_X_Ports.html

上記から、libjpeg 6bのパッケージをダウンロードし、そのままインストール。
再度configureしてみると、エラーが出なかった。
とりあえず、このまま続行。



13.


make


Don't forget to run 'make test'.



14.


make test


Tests skipped : 3(4.4%)
...
Tests passed : 65(95.6%)


という感じ。
エラーはなさそうなので、



15.


sudo make install


できったぽい。


しかし、DrupalのGDライブラリのエラーが消えない...。うー。


そしてまた翌日。
いろいろ調べて、php.iniにたどり着く。

php.ini gdライブラリ mac

でググってみると、風ブログさんの以下の記事が。

http://aeolus.jp/higuma/2008/10/d-13.html


16.
viでphp.iniを開き、extension_dirで検索。
見つかったので、そこに以下の2行を追加。

	extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20060613"
	extension=gd.so

apacheを再起動して、Drupalの現状報告ページをリロードしてみると、
エラーが消えた...


ふぅー...。