下载 PHP7.3.5
[root@localhost ~]# mkdir devdir
[root@localhost ~]# cd devdir/腔李
[root@localhost devdir]# wget https://www.php.net/distributions/php-7.3.5.tar.gz
-bash: wget: 未找到命令
[root@localhost devdir]# rpm -qa|grep wget
[root@localhost devdir]# yum -y install wget
[root@localhost devdir]# rpm -qa|grep wget
wget-1.14-18.el7.x86_64
下载PHP7 解压 编译
wget -c https://downloads.php.net/~cmb/php-7.3.4.tar.gz
编译参数解释
--with-fpm-user=webu --with-fpm-group=webg 添加PHP运行用户和用户组
配置信息出庆饥错:
下载gcc软件编译器 yum install -y gcc
configure: error: libxml2 not found. Please check your libxml2 installation.
下载libzip-1.5.2.tar.gz
https://libzip.org/download/libzip-1.5.2.tar.gz
解决libzip 和cmake版本问题
重新配置PHP7编译环境参数
libzip-1.5.2 无法安装誉圆返,已经取消了。
提示off_t类型没有定义 undefind,解决方法:
编译安装
测试PHP是否安装成功
转载自:https://my.oschina.net/u/4127346/blog/3047778
首先推荐一篇文章PHP
7
Release
Date
Arrived:
Will
Developers
Adopt
PHP
7?
-
PHP
Classes
blog
。
里面说到是否会去使用PHP7,就个人而言,我是毫不犹豫地使用的,但是生产环握判境就不是我说了算,所以只能自己在自己的开发环境里更新PHP的版本。那么,你呢?
笔者使用的是Linux的openSUSE42.1发行版,Yast里面还没有PHP7的安装包,于是乎只能自己手动编译安装了。作为一个PHP开发者,我是非常希望能够学会编译安装PHP7的,之前试过几次,但是每次安装都要上网找各段消改种资料,于是乎,这次安装成功后就想把自己的安装过程以及遇到的问题记录下来,方便以后查阅和分享给需要的人。
下载源码并解压
进入正题,要编译安装PHP7,首先当然要下载PHP7的源码。你可以到
github
上clone,也可以到
PHP官网
下载。下载后解压到
/usr/local/src
目录,并将目录重命名为php7。进入目录。
配置编译参数
生成配置文件
./buildconf
配置
./configure
\
--prefix=/usr/local/php7
\
--exec-prefix=/usr/local/php7
\
--bindir=/usr/local/php7/bin
\
--sbindir=/usr/local/php7/sbin
\
--includedir=/usr/local/php7/include
\
--libdir=/usr/local/php7/lib/php
\
--mandir=/usr/local/php7/php/man
\
--with-config-file-path=/usr/local/php7/etc
\
--with-mysql-sock=/var/run/mysql/mysql.sock
\
--with-mcrypt=/usr/include
\
--with-mhash
\
--with-openssl
\
--with-mysqli=shared,mysqlnd
\
--with-pdo-mysql=shared,mysqlnd
\
--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-gd-native-ttf
\
--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
\
--disable-cgi
\
--with-fpm-user=nginx
\
--with-fpm-group=nginx
\
--without-gdbm
\
--disable-fileinfo
参数说明
prefix
PHP7安装的根目录
with-config-file-path
PHP7的配置文件目录
执行完上面的配置命令后的结果如下图所示:
执行上面命令的过程中会遇到一些依赖缺少的提示,下面列出我遇到的依赖问题:
错误:
configure:
error:
xml2-config
not
found.
Please
check
your
libxml2
installation.
解决:
zypper
install
libxml2-devel
错误:
configure:
WARNING:
unrecognized
options:
--with-mysql
解决:
取消这个选项,这个选项是不存在的
错误:
configure:
error:
jpeglib.h
not
found.
解决:
zypper
install
libjpeg-devel
错误:
configure:
error:
mcrypt.h
not
found.
Please
reinstall
libmcrypt.
解决:
zypper
install
libmcrypt-devel
错误:
checking
for
recode
support...
yes
configure:
error:
Can
not
find
recode.h
anywhere
under
/usr
/usr/local
/usr
/opt.
解决:
zypper
install
librecode-devel
总的来说,在配置的时候遇到没有的就打开Yast搜一下,如果有的话就安装,然后重新编译看还需要那些,如果在Yast找不到,那就上网找一下Google。
编译和安装PHP7
make
&&
make
install
其中,make之后可以选择make
test。只是一个可选步骤,不执行不知道有什么问题,不过笔者暂时还没遇到。
查看安装成功后的PHP7目录
编译安装成功后,查看PHP7的安装目录`ls
/usr/local/php7`:
设置PHP7的配置文件
cp
/usr/local/src/php7/php.ini-production
/usr/local/php7/etc/php.ini
cp
/usr/local/src/sapi/fpm/init.d.php-fpm
/etc/init.d/php-fpm
cp
/usr/local/php7/etc/php-fpm.conf.default
/usr/local/php7/etc/php-fpm.conf
cp
/usr/local/php7/etc/php-fpm.d/www.conf.default
/usr/local/php7/etc/php-fpm.d/www.conf
设置环境变量
在/etc/profile
文件的最后一行加上
export
PATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATH
然后执行
source
/etc/profile
设置PHP日志目录和php-fpm进程文件(php-fpm.sock)目录
mkdir
-p
/var/log/php-fpm/
&&
mkdir
-p
/var/run/php-fpm
&&
cd
/var/run/
&&
chown
-R
nginx:nginx
php-fpm
将PHP设置为开机启动
chmod
+x
/etc/init.d/php-fpm
chkconfig
php-fpm
on
可以用chkconfig命令查看开机启动服务列表。
启动PHP服务
service
php-fpm
start
通过ps
aux
|
grep
'php'查看PHP是否启动成功
至此,PHP7就安装成功了,你也开始使用PHP7吧!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)