我的环境php5.4.44
首先进入源码中/ext/pdo目录,运行/usr/local/bin/phpize(php的安装目录下phpize,必须在/ext/pdo目录中运行),运行结束后,会产生一个configure文件
接下下./configure -with-php-config=/usr/local/bin/php-config -enable-pdo=shared
其中-with-php-config是php的安装目录下php-config,-enable-pdo=shared建议加上。
执行完成后,就是make & make install
网上很多教程写到这里,之后就是开启php.ini中extension=pdo_mysql.dll就OK了,但经我测试phpinfo()中仍然没有pdo_mysql,而且.dll文件是windows平台的,不知道为什么网上很多教程写的是linux下也是开启extension=pdo_mysql.dll,却能成功。
在make install安装完成后,会有提示,这个提示很重要,提示大概是这样的:
Installing shared extensions: /usr/local/lib/php/extensions/no-debug-zts-20100525/
Installing header files: /usr/local/include/php/
Installing PDO headers: /usr/local/include/php/ext/pdo/
其中第一行表示php扩展安装在了哪个地方,把这个路径记下来,打开php.ini文件(未指定的情况下在/usr/local/lib中),
加入两行
extension=/usr/local/lib/php/extensions/no-debug-zts-20100525/pdo.so
extension=/usr/local/lib/php/extensions/no-debug-zts-20100525/pdo_mysql.so
然后重启apache,再次查看phpinfo(),这里已经有了pdo_mysql模块。