码迷,mamicode.com
首页 > Web开发 > 详细

编译安装PHP遇到的问题

时间:2015-06-16 22:27:11      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

今天升级了服务器的MYSQL到5.5,是通过RPM安装,升级之后发现项目中PHP报错,于是打算将PHP也升级下。

首先下载PHP源码,我这里下载的是PHP 5.6.8,解压到/usr/local/后开始进行编译

./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-mysql=/usr/ \
--with-mysqli=/usr/bin/mysql_config \
--with-mysql-sock=/tmp/mysql.sock \
--enable-fpm \
--enable-sockets \
--enable-ftp \
--enable-mbstring \
--enable-zip \
--enable-exif \
--enable-soap \
--enable-gd-native-ttf \
--enable-mbregex \
--disable-ipv6 \
--with-fpm-user=www \
--with-fpm-group=www \
--with-libxml-dir \
--with-mhash \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-zlib-dir \
--with-mcrypt \
--with-pear \
--with-curl \
--with-openssl  \
--with-iconv-dir \
--enable-pcntl \
--disable-fileinfo

因为mysql是RPM安装的,所以在安装的时候遇到了几个问题:

configure: error: Cannot find MySQL header files under /usr/bin/.
Note that the MySQL client library is not bundled anymore!

首先是报这个错误,全局搜索了下发现确实没有mysql.h这个头文件,Google后发现应该安装MySQL-devel-5.5.44-1.rhel5.x86_64.rpm这个开发包,

安装Mysql devel包之后重新编译还是报错

configure: error: Cannot find libmysqlclient under /usr.

find / -name libmysqlclient* 发现这个文件存在于/usr/lib64/mysql/这个目录下,而php编译的时候默认去/usr/lib下查找,于是

mkdir -p /usr/lib/mysql
cp -r /usr/lib64/mysql/* /usr/lib/mysql/

再次编译后通过了.

但是在make 的过程中,因为我们的测试机器内存只有512M,很不幸的再次报错。

virtual memory exhausted: Cannot allocate memory
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

google后在这里找到了答案https://bugs.php.net/bug.php?id=48809

技术分享

再次编译,make 通过

 

编译安装PHP遇到的问题

标签:

原文地址:http://www.cnblogs.com/honeybaobao/p/4581756.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!