kavin

php编译添加扩展

kavin PHP 2018-05-04 2514浏览 0

非常经常用到的一个编译,统一了下,这回可以直接复制黏贴就可以做完啦,不然还需要找参数,真悲惨 。

 

编译PHP所需要的支持
yum install gcc
yum install libxml2-devel curl-devel libjpeg libjpeg-devel libpng-devel freetype-devel.x86_64 mysql-devel
yum install freetype-devel.x86_64  freetype.x86_64
yum install libjpeg libjpeg-devel

下载PHP:wget http://us1.php.net/distributions/php-5.3.28.tar.bz2

tar -jxf php-5.3.28.tar.bz2
cd php-5.3.28

./configure  --prefix=/usr/local/php-5.3.28  --enable-fpm  --with-mysql  --with-zlib  --with-config-file-path=/usr/local/php5.3.28/etc  --with-pdo-mysql   --with-libdir=lib64 --with-gd --with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --enable-mbstring --enable-gd-native-ttf --enable-xml  --with-freetype-dir --with-curl  --enable-ftp  --enable-zip --with-mcrypt  --enable-mbstring  --enable-json

 

出现失败

checking for alloca... (cached) yes
checking for 8-bit clean memcmp... yes
checking for stdarg.h... (cached) yes
checking for mcrypt support... yes
configure: error: mcrypt.h not found. Please reinstall libmcrypt

rpm -qa | grep libmcrypt
libmcrypt-2.5.7-5.el5
libmcrypt-2.5.8-4.el5.centos

有但是失败,上面的是用yum安装,不对,难道需要去下载包编译??试试呗:

wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz 安装:
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure
make
make install

然后重新编译PHP,O(∩_∩)O哈哈~成功过了

# make
# make install
# cp php.ini-production /usr/local/php5.3.28/etc/php.ini
# cp sapi/fpm/php-fpm.conf /usr/local/php5.3.28/etc/
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod 755 /etc/init.d/php-fpm
# cd /usr/local/php5.3.28/etc/
# vi php-fpm.conf
将[global]属性里面的pid = run/php-fpm.pid  去掉注释。
将[www]属性里面的 user = nobody  group = nobody  的nobody改为nginx
将pm.min_spare_servers = 5 去掉注释
将pm.max_spare_servers = 35 去掉注释
将pm.start_servers = 20 去掉注释
设置memory_limit = 128M
date.timezone = Asia/Shanghai

vi /etc/profile
PATH=$PATH:/usr/local/php5.3.28/bin:/usr/local/php5.3.28/sbin
source /etc/profile

添加nginx php-fpm的支持

vi /etc/nginx/fastcgi_params
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;

 

现在我们来解释下编译的一些参数

./configure  --prefix=/usr/local/php-5.3.28  安装的路径

--enable-fpm 打上PHP-fpm 补丁后才有这个参数,CGI方式安装的启动程序

--with-mysql

--with-zlib  打开zlib库的支持

--with-config-file-path=/usr/local/php5.3.28/etc

--with-pdo-mysql

--with-libdir=lib64

--with-gd 打开gd库的支持

--with-jpeg-dir=/usr/lib  打开对jpeg图片的支持

--with-png-dir=/usr/lib  打开对png图片的支持

--enable-mbstring   多字节,字符串的支持

--enable-gd-native-ttf   支持TrueType字符串函数库

--enable-xml 打开xml支持

--with-freetype-dir  打开对freetype字体库的支持

--with-curl  打开curl浏览工具的支持

--enable-ftp   支持ftp扩展

--enable-zip  支持zip扩展

--with-mcrypt   支持mcrypt扩展

--enable-mbstring   支持mbstring扩展

--enable-json  支持json扩展


转载请注明:IT运维空间 » PHP » php编译添加扩展

继续浏览有关 php 的文章
发表评论