有关如何在64bit Mac OS X Leopard下面重新编译PHP并添加自己需要模块的文章请参考Leopard 编译 universal php5

重新编译后会出现一个问题:iconv无法编译进去。按照上文的方法,有些机器可以编译,但我的就死活不行。于是只能把iconv单独编译为so,再到php.ini里面添加。

$ cd php-5.2.5/ext/iconv/
$ phpize
$ ./configure
$ make && make install

然后编辑php.ini,先修改extension_dir为PHP扩展的路径,比如

; Directory in which the loadable extensions (modules) reside.
extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20060613/"

再把iconv.so添加进去,如

extension=iconv.so

保存后再看一下php -m,iconv已经加载进去了

Sam@Bogon:~$ php -m
[PHP Modules]
apc
ctype
curl
date
dom
filter
gd
hash
http
iconv
json
libxml
mbstring
mysql
pcre
PDO
pdo_mysql
pdo_sqlite
posix
Reflection
session
SimpleXML
SPL
SQLite
standard
tokenizer
xml
xmlreader
xmlwriter
zlib
 
[Zend Modules]
 
Sam@Bogon:~$