首页 - 通讯 - centos7下编译安装php7.3

centos7下编译安装php7.3

2023-10-10 01:10
-->

1。下载php7.3源码

https://www.gsm-guard.net/downloads.php

下载php-7.3.4.tar.gz

2。安装gcc、gcc-c++、kernel-devel

yum -y 安装 gcc gcc-c++ 内核开发

  

3。安装php所需的依赖库

yum -y install wget pcre pcre-devel openssl openssl-devel libicu-devel autoconf libjpeg libjpeg-devel \
libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel \
glib2 glib2-devel ncurses ncurses-develcurlcurl-develkrb5-devellibidnlibidn-developenldap\
openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel \
gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline \
readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel

4。创建用户和组,并解压

加群www
useradd -g www www
tar xf php-7.3.4.tar.gz
cdphp-7.3.4

  

5。编译安装

php路径 --前缀和配置文件 --with-config-file-path 路径可以自己设置

./configure --prefix=/data/nmp/php \
--with-config-file-path=/data/nmp/php/etc \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-iconv-dir \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir \
--with-ldap=共享\
--with-gdbm \
--with-pear \
--with-gettext \
--with-curl \
--with-xmlrpc \
--with-openssl \
--with-mhash \
--with-gd \
--enable-fpm \
--enable-mysqlnd \
--enable-mysqlnd-compression-support \
--enable-xml \
--enable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--启用内联优化\
--enable-mbregex \
--enable-mbstring \
--enable-intl \
--enable-ftp \
--enable-gd-jis-conv \
--enable-pcntl \
--启用套接字\
--enable-zip \
--enable-soap \
--enable-fileinfo \
--enable-opcache \
--启用维护者-zts \

编译安装

make -j 4 && 进行安装

  

上述步骤可能出现的问题:

1。配置:警告:无法识别的选项:--with-mcrypt、--with-libmbfl、--enable-gd-native-ttf

表示以上配置参数已废弃,可以删除。

2。配置:错误:DBA:找不到必要的头文件。

安装 yum install gdbm-devel

3。配置:错误:在 /usr/lib 中找不到 ldap 库

复制文件 cp -frp /usr/lib64/libldap* /usr/lib/

4。配置:错误:off_t 未定义;检查您的库配置

执行以下操作:

vi /etc/ld.so.conf
#添加以下行
/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64
#保存并退出
:wq
#让它有效
ldconfig-v

5。配置:错误:请重新安装 libzip 发行版

在https://www.gsm-guard.net/download/下载源代码并安装

tar xf libzip-1.5.2.tar.gz
cd libzip-1.5.2
mkdir 构建 && cd 构建 && cmake .. && make && make install

6。需要 CMake 3.0.2 或更高版本。您正在运行版本 2.8.12.2

说明你的cmake版本太低,需要重新安装

先删除原来的cmake

百胜删除 cmake

在https://www.gsm-guard.net/download/

下载源代码
tar xf cmake-3.14.3.tar.gz
cd cmake-3.14.3
./bootstrap && 制作 && 制作安装

然后修改vi /etc/profile,添加以下内容

PATH=/usr/local/bin:$PATH
导出路径
源/etc/profile

  

6。配置php.ini文件

具体路径可以自行修改。

cp php.ini-development /data/nmp/php/etc/php.ini
cp /data/nmp/php/etc/php-fpm.conf.default /data/nmp/php/etc/php-fpm.conf
cp /data/nmp/php/etc/php-fpm.d/www.conf.default /data/nmp/php/etc/php-fpm.d/www.conf

配置php.ini文件

最大执行时间 = 120
最大输入时间 = 120
内存限制 = 1024M
post_max_size = 128M
日期.时区 = PRC
extension_dir =“/data/nmp/php/lib/php/extensions/no-debug-zts-20180731”

  

7。配置Systemd服务

其实php-fpm.service文件php已经帮我们配置好了。我们只需要将其复制到指定位置并启用即可。

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

php-fpm.service文件内容如下:

[单位]
描述=PHP FastCGI 进程管理器
之后=网络.目标 [服务]
类型=简单
PIDFile=/data/nmp/php/var/run/www.gsm-guard.net
ExecStart=/data/nmp/php/sbin/php-fpm --nodaemonize --fpm-config /data/nmp/php/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
PrivateTmp=true [安装]
WantedBy=多用户.target

启用 php-fpm.service

systemctl 启用 php-fpm.service

启动php-fpm