中国石油发行价,万圣节打鬼,海边风景图片
今天在64位red hat enterprise linux as release 4 .7上编译php5.2.6出错,mysql是使用的rpm方式安装的,php编译代码如下:
./configure --prefix=/usr/local/php --with-mysql --with-apxs2=/usr/local/apache/bin/apxs --with-openssl --with-curl --enable-xml --with-mcrypt --with-ttf --enable-magic-quotes --enable-fastcgi --enable-mbstring --with-iconv --enable-mbstring --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --enable-sysvsem出现以下错误:checking for specified location of the mysql unix socket... no checking for mysql unix socket location... no configure: error: cannot find libmysqlclient under /usr. note that the mysql client library is not bundled anymore!
通过查找libmysqlclient,发现是在/usr/lib64/mysql/目录内的libmysqlclient.so.16.0.0做的软连接,php默认是去的 /usr/lib/搜索,所以没有找到.找到问题了就好解决了.
类似的问题还有:
/usr/lib/libjpeg.so -> /usr/lib64/libjpeg.so
解决方法:
1.
cp -rp /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient.so
2.
/usr/lib64/libmysqlclient.so -> libmysqlclient.so.16.0.0/usr/lib/libmysqlclient.so -> /usr/lib64/libmysqlclient.so checking whether to enable embedded mysqli support… no checking for mysql_set_server_option in -lmysqlclient… no configure: error: wrong mysql library version or lib not found. check config.log for more information
经过测试后, 发现如下解决方案:
(php-xxxxx为php文件名, 代表路径)
# cd /usr/local/src/php-xxxxx/ext/mysqli # yum -y install mysql-devel # /phpize # ./configure –with-php-config= /php-config –enable-embedded-mysqli=shared –enable-shared # make # make install
这时屏幕会打印mysqli.so生成的路径, 在php.ini里加载就好啦
/usr/bin/ld: cannot find -lmysqlclient
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
YII2框架中使用RBAC对模块,控制器,方法的权限控制及规则的使用示例
YII2框架中ActiveDataProvider与GridView的配合使用操作示例
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
网友评论