关于php与mysql之间的工作机制,今天蛋疼地考虑php编译安装时不添加--with-mysql参数,是否可以实现mysql_connect()函数。

第一次编译只是简单的

./configure--prefix=/usr/local/php--with-config-file-path=/usr/local/php/etcmake&&makeinstall

mysql_connect()果然使用不了,本来想yum安装php-mysql,想着好久没有扩展编译。

于是又开始折腾了。

cdext/mysql/usr/local/php/bin/phpize./configure-with-php-config=/usr/local/php/bin/php-config--with-mysql=/usr/local/mysql

接着在配置文件php.ini添加extension,果断遇到报错。

NOTICE:PHPmessage:PHPWarning:PHPStartup:Invalidlibrary(maybenotaPHPlibrary)'/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/mysql.so'inUnknownonline0

折腾着extension,extension_dir两个选项,各种组合都使用过了。只好上搜索引擎了,两个小时后还是没有在网上找到能解决的方案。这时把注意力想到php安装环节,以上的php已经是第二安装了。之前只做过删除安装目录,源码包的文件继续使用之前解压出来的。

rm-rf/usr/local/php

然后,再来一次

rmsrc-rf(记性太差了,这次忘记删除安装目录了/usr/local/php)tarzxvfphp-5.x.x.tar.gzcdphp-5.x.x./configure--prefix=/usr/local/php--with-config-file-path=/usr/local/php/etcmake&&makeinstall

cdext/mysql/usr/local/php/bin/phpize./configure-with-php-config=/usr/local/php/bin/php-config--with-mysql=/usr/local/mysql

由于安装目录没有删除,配置文件就没有动过了。

测试,成功。


结论:编译安装记得在删除src目录或者make clean命令