CentOs环境下PHP支持PDO_MYSQL

一、下载相应tgz包;
 http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
二、安装开始

解压
# tar zxvf PDO_MYSQL-1.0.2.tgz 

# cd PDO_MYSQL-1.0.2

运行命令

# /usr/local/php/bin/phpize 

Configuring for:
PHP Api Version:         20121212
Zend Module Api No:      20060613
Zend Extension Api No:   220060519

 

如果运行/usr/local/php/bin/phpize 出现Cannot find autoconf. Please check your autoconf installation and the 
$PHP_AUTOCONF environment variable. Then, rerun this script. 那么说明没有autoconf

 

那么执行命令 yum install m4  

                 yum install autoconf

 

配置
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql

如果配置

如果执行时报错
configure: warning: You will need re2c 0.12.0 or later if you want to regenerate PHP parsers.
checking for gawk... gawk
checking for MySQL support for PDO... yes, shared
checking for mysql_config... not found
configure: error: Cannot find MySQL header files under 
解决办法:
cp /usr/local/mysql/bin/mysql_config /usr/bin

 

编译
如果执行时报错
/PDO_MYSQL-1.0.2/php_pdo_mysql_int.h:25:19: error: mysql.h: No such file or directory
In file included from /software/PDO_MYSQL-1.0.2/pdo_mysql.c:31:
/PDO_MYSQL-1.0.2/php_pdo_mysql_int.h:36: error: expected specifier-qualifier-list before ‘MYSQL‘
/PDO_MYSQL-1.0.2/php_pdo_mysql_int.h:48: error: expected specifier-qualifier-list before ‘MYSQL_FIELD‘
/PDO_MYSQL-1.0.2/php_pdo_mysql_int.h:53: error: expected specifier-qualifier-list before ‘MYSQL_RES‘
make: *** [pdo_mysql.lo] Error 1
解决办法:
yum install mysql-devel

如果执行yum install mysql-devel错误仍然存在,那么执行如下操作

这是因为在编译时需要mysql的头的文件,而它按默认搜索找不到头文件的位置,所以才出现这个问题.所以要将 /usr/local/mysql/include/ 目录下的mysql头文件链接到 /usr/local/include/ 的目录下:
ln -s /usr/local/mysql/include/* /usr/local/include/

 

一般来说,执行完上面的命令后,应该能编译过去 。然后再make和make install,pdo_mysql模块加进去了



三、修改php.ini; 
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20121212/"(no-debug-zts-20121212 该路径名根据自己的实际情况设置)
extension = "pdo_mysql.so"

自此,PDO_MYSQL安装完成。

 

http://blog.csdn.net/blueg2013/article/details/9307767

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。