如何以正确的姿势编译安装PHP-7.3.8 - 开发说
当前位置: 主页 » PHP » 如何以正确的姿势编译安装PHP-7.3.8

如何以正确的姿势编译安装PHP-7.3.8

      2019年08月22日   阅读 1,866 次     0 评论   Tags: ·

本着折腾的原则,本站所用的LNMP都是最新版,但是安装PHP-7.3.8的时候出现了很多报错,本文就最新版PHP-7.3.8进行编译安装的过程进行记录一下。

LNMP环境搭建(二)
LNMP服务监控并保障7×24可用性脚本
Centos7 LNMP一键安装脚本
CentOS 7安装 LNMP(Linux+Nginx+MariaDB+PHP)

1、准备工作


1.1、安装EPEL源
yum -y install epel-release.noarch

1.2、安装相关依赖包:
yum -y install gcc gcc-c++ make cmake  perl autoconf automake libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel openssl openssl-devel pcre pcre-devel libtool  pcre-devel libaio-devel libaio bzip2-devel libcurl-devel gd-devel bison bison-devel  mhash

2、安装CMake和libzip


2.1先移除自带的libzip和Cmake
yum remove cmake* libzip*

2.2、安装CMake二进制包,因为如果先编译安装libzip最新版会提示CMake版本太低。
wget https://cmake.org/files/v3.15/cmake-3.15.2-Linux-x86_64.tar.gz
tar xf cmake-3.15.2-Linux-x86_64.tar.gz 

export CMAKE_HOME=/usr/local/src/cmake-3.15.2-Linux-x86_64    (这是我的个人习惯,我习惯在/usr/local/src文件夹下放置软件)
export PATH=$PATH:$CMAKE_HOME/bin
source /etc/profile

###CMake到此就算安装完毕。

2.3、编译安装libzip
wget https://libzip.org/download/libzip-1.5.2.tar.gz
tar xf libzip-1.5.2.tar.gz 
cd libzip-1.5.2
mkdir build
cd build/
cmake ..
make && make install

###libzip到此就算安装完毕。

2.4、配置环境变量
vim /etc/ld.so.conf 
#添加如下几行
/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64 
#保存退出
:wq
ldconfig -v # 使之生效

cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h

###环境变量配置完毕。

3、安装PHP-7.3.8,这里有个小技巧,如果你编译安装过PHP-7.x的版本,在你以前安装的PHP-7.x的包里面会生成一个config.nice文件,你只需要把此文件,复制到PHP-7.3.8文件夹内,并执行./config.nice && make && make install 命令即可,不需要重复编写编译参数,注意:此方法仅限于不修改任何编译参数的情况下使用,当然你也可以编写config.nice文件来进行编译参数修改。



###config.nice文件的内容如下:

#! /bin/sh
#
# Created by configure

'./configure' \
'--prefix=/usr/local/php' \
'--exec-prefix=/usr/local/php' \
'--bindir=/usr/local/php/bin' \
'--sbindir=/usr/local/php/sbin' \
'--includedir=/usr/local/php/include' \
'--libdir=/usr/local/php/lib/php' \
'--mandir=/usr/local/php/php/man' \
'--with-config-file-path=/usr/local/php/etc' \
'--with-mysql-sock=/var/lib/mysql/mysql.sock' \
'--with-mhash' \
'--with-openssl' \
'--with-mysqli=shared,mysqlnd' \
'--with-pdo-mysql=shared,mysqlnd' \
'--without-sqlite3' \
'--without-pdo-sqlite' \
'--with-gd' \
'--with-iconv' \
'--with-zlib' \
'--enable-zip' \
'--enable-inline-optimization' \
'--disable-debug' \
'--disable-rpath' \
'--enable-shared' \
'--enable-xml' \
'--enable-bcmath' \
'--enable-shmop' \
'--enable-sysvsem' \
'--enable-mbregex' \
'--enable-mbstring' \
'--enable-ftp' \
'--enable-pcntl' \
'--enable-sockets' \
'--with-xmlrpc' \
'--enable-soap' \
'--without-pear' \
'--with-gettext' \
'--enable-session' \
'--with-curl' \
'--with-jpeg-dir' \
'--with-freetype-dir' \
'--enable-opcache' \
'--enable-fpm' \
'--with-fpm-user=nobody' \
'--with-fpm-group=nobody' \
'--without-gdbm' \
'--enable-fast-install' \
'--disable-fileinfo' \
"$@"


###创建php-fpm控制脚本,此脚本PHP-7.3.8已经自带了,位于PHP-7.3.8包的sapi/fpm下。

CENTOS 6
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

CENTOS 7
cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/


4、至此PHP-7.3.8安装完毕。

  • 版权声明:本文版权归开发说和原作者所有,未经许可不得转载。文章部分来源于网络仅代表作者看法,如有不同观点,欢迎进行交流。除非注明,文章均由 开发说 整理发布,欢迎转载,转载请带版权。

  • 来源:开发说 ( https://www.kaifashuo.com/ ),提供主机优惠信息深度测评和服务器运维编程技术。
  • 链接:https://www.kaifashuo.com/1145.html
  • 评论(0

    1. 还没有任何评论,你来说两句吧

    发表回复

    您的电子邮箱地址不会被公开。 必填项已用 * 标注