在编译php5.5以上版本的时候发现,直接下载扩展包编译安装不太好用。其实这个版本以上的php在自身的ext的目录中已经放了不少的扩展模块,编译好了,模块就直接加载进来了。如图:
拿pdo_mysql这个模块为例,进入到这个目录中执行命令phpize,之后出现问题了
根据错误提示确定缺少了某些的包,执行命令安装这些包
yum –y install autoconf
yum –y install m4
安装完这两个包之后在执行phpize后没有报错了
然后执行命令
ln -s /usr/local/mysql/include/*/usr/local/include/ 作用是将mysql的头文件做成软链接到include目录下。
然后进行编译安装
./configure--with-php-config=/usr/local/php/bin/php-config--with-pdo-mysql=/usr/local/mysql
make
make install
这时候在目录下/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226中就能找到被编译好的模块pdo_mysql.so。
然后进入到/usr/local/src/php-5.6.8目录中,拷贝出php的配置文件php.ini-production,到php的/etc的目录中写成php.ini
Vim php.ini后
加入扩展的模块
然后重启服务之后,模块就被加载上了
参考资料:
http://blog.helloarron.com/2015/10/12/linux/linux-php-compile-mudoles/
http://bbs.chinaunix.net/thread-3667686-1-1.html
http://www.opsers.org/server/compile-installation-pdo_mysql-prompt-pdo_mysql-lo-error-solution.html
原文地址:http://881955.blog.51cto.com/871955/1726187