Ubuntu编译安装php7.4
 [root@ubuntu2004 php-7.4.30]#apt install gcc libssl-dev libxml2-dev libsqlite3-dev libcurl3-dev libxml2 sqlite3
 ​
 ​
 [root@ubuntu2004 php-7.4.30]#./configure --prefix=/apps/php74 --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --with-zlib --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --enable-mbstring --enable-xml --enable-sockets --enable-fpm --enable-maintainer-zts --disable-fileinfo  
 ​
 [root@ubuntu2004 php-7.4.30]#make clean     #如果出错,最好清除下编译信息,在重新编译
 ​
 [root@ubuntu2004 php-7.4.30]#make && make install
 ​
 [root@ubuntu2004 php-7.4.30]#/apps/php74/bin/php --version       #测试 能看到版本表示已安装成功
 PHP 7.4.30 (cli) (built: Oct 22 2022 09:37:13) ( ZTS )
 Copyright (c) The PHP Group
 Zend Engine v3.4.0, Copyright (c) Zend Technologies
 ​
 [root@ubuntu2004 php-7.4.30]#cp php.ini-production /apps/php74/etc/php.ini     #生成php.ini
 [root@ubuntu2004 php-7.4.30]#cd /apps/php74/etc/php-fpm.d/                      
 [root@ubuntu2004 php-fpm.d]#cp www.conf.default www.conf                       #生成www.conf
 [root@ubuntu2004 php-fpm.d]#vim /apps/php74/etc/php-fpm.d/www.conf             #配置用户
 user = nginx      #指定用户为nginx
 group = nginx
 [root@ubuntu2004 php-fpm.d]#useradd -r -u 888 nginx
 ​
 [root@ubuntu2004 php-fpm.d]#cd /apps/php74/etc
 [root@ubuntu2004 etc]#cp php-fpm.conf.default php-fpm.conf                     #生成php-fpm.conf
 ​
 ​
 ​
 ​
 #生成启动文件
 [root@ubuntu2004 etc]#cp /usr/local/src/php-7.4.30/sapi/fpm/php-fpm.service /usr/lib/systemd/system/
 ​
 #做一下修改
 [root@ubuntu2004 etc]#vim /usr/lib/systemd/system/php-fpm.service
 ​
 # Mounts the /usr, /boot, and /etc directories read-only for processes invoked by this unit.
 #ProtectSystem=full
 ProtectSystem=false
 ​
 #说明:把 ProtectSystem=full修改为: ProtectSystem=false 如果不做修改会报错
 ​
 ​
 [root@ubuntu2004 etc]#systemctl daemon-reload
 [root@ubuntu2004 etc]#systemctl start php-fpm.service
 [root@ubuntu2004 etc]#systemctl status php-fpm.service
 ​
 [root@ubuntu2004 php-fpm.d]#ps aux | grep php
 ​

出现的错误

 checking for libxml-2.0 >= 2.7.6... no
 configure: error: in `/usr/local/src/php-7.4.30':
 configure: error: The pkg-config script could not be found or is too old. Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
 path to pkg-config.
 ​

解决办法:

 [root@ubuntu2004 php-7.4.30]#apt install pkg-config Libxml2-dev -y
 #如果libxml2无法安装,需要到官网下载自行编译:
 https://gitlab.gnome.org/GNOME/libxml2/-/releases
 tar -zxvf v2.9.9.tar.gz -C /usr/local/src
 cd /usr/local/src/
 ./autogen.sh
 ./configure --prefix=/usr/local/libxml2 && make -j4 && make install
 ​

出现的错误

 configure: error: Package requirements (zlib >= 1.2.0.4) were not met:
 ​
 No package 'zlib' found
 ​

解决办法:

 [root@ubuntu2004 php-7.4.30]#apt install zlib1g-dev -y

出现的错误

 checking for oniguruma... no
 configure: error: Package requirements (oniguruma) were not met:
 ​
 No package 'oniguruma' found
 ​

解决办法:

 [root@ubuntu2004 php-7.4.30]#apt install libonig-dev -y

Ubuntu编译安装php7.4的更多相关文章

  1. Ubuntu编译安装PHP7

    参数配置 ./configure --prefix=/usr/local/php7 \ --with-config-file-path=/usr/local/php7/etc \ --with-apx ...

  2. ubuntu编译安装php7遇到的问题及解决方案

    configure: error: Cannot find OpenSSL's <evp.h> 这个可以在configure的时候,指定openssl的路径,查看openssl的安装路径: ...

  3. ubuntu编译安装php7, 安装openssl

    sudo apt-get install openssl sudo apt-get install libssl-dev

  4. nginx php-fpm安装配置 CentOS编译安装php7.2

    CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...

  5. 编译安装PHP7并安装Redis扩展Swoole扩展

    编译安装PHP7并安装Redis扩展Swoole扩展 在编译php7的机器上已经有编译安装过php5.3以上的版本,从而依赖库都有了 本php7是编译成fpm-php 使用的, 如果是apache那么 ...

  6. 【安装PHP】如何在openSUSE42.1下编译安装PHP7

    首先推荐一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog. 里面说到是否会去使用PHP7, ...

  7. 全志a20安卓电视盒子安装可道云kodexplorer服务-编译安装php7.3+nginx

    可道云真的很强大,安装包很小,功能却很齐全,还可以自定义轻应用如果有手机客户端就更好了 研究了一下,可道云根目录放到外置存储设备(移动硬盘)会更合适,改路径的方法下面有提到上传文件时一个文件会在用户目 ...

  8. centos7.6编译安装php7.2.11及redis/memcached/rabbitmq/openssl/curl等常见扩展

    centos7.6编译安装php7..11及redis/memcached/rabbitmq/openssl/curl等常见扩展 获取Php的编译参数方法: [root@eus-api-cms-bac ...

  9. centos7下编译安装php-7.0.15(PHP-FPM)

    centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...

随机推荐

  1. 历时2月,动态线程池 DynamicTp 发布里程碑版本 V1.0.8

    关于 DynamicTp DynamicTp 是一个基于配置中心实现的轻量级动态线程池管理工具,主要功能可以总结为动态调参.通知报警.运行监控.三方包线程池管理等几大类. 经过多个版本迭代,目前最新版 ...

  2. [CF1481D] AB Graph(构造)

    题解 给一个 n \tt n n 个点的完全有向图, ( u , v ) \tt(u,v) (u,v) 或者 ( v , u ) \tt(v,u) (v,u) 都有一条边,前提是 u ≠ v \tt ...

  3. B2. Wonderful Coloring - 2

    链接:Problem - 1551B2 - Codeforces 题意:有m个颜色,要求每种颜色内的数字各不相同,问,颜色的最大长度多少. 题解:  判断每个数字的个数,如果大于m,那么最大长度就加一 ...

  4. 二进制redis集群部署

    二进制redis集群部署 〇.前言 无聊想学罢了 准备环境: 三台centos7 1C1GB即可 三个路相连的地址 主机 IP 节点-角色-实例(端口) redis1 172.16.106.128 M ...

  5. C++程序的内存分布

    4.文字常量区: p与p1的指针地址一致,且字符串常量是不能被改变的. 5.程序代码区:存放一系列代码. 动态内存 1.按需分配,根据需要分配内存,不浪费. 内存拷贝函数 void *memcpy(v ...

  6. 基于electron+vue+element构建项目模板之【创建项目篇】

    1.概述 electron:使用javascript.css.html构建跨平台的桌面应用程序 vue:数据驱动视图中的一款渐进式的javascript框架 element:基于vue的桌面端UI组件 ...

  7. dotnet7 aot编译实战

    0 起因 这段日子看到dotnet7-rc1发布,我对NativeAot功能比较感兴趣,如果aot成功,这意味了我们的dotnet程序在防破解的上直接指数级提高.我随手使用asp.netcore-7. ...

  8. 彻底掌握Makefile(二)

    彻底掌握Makefile(二) 前言 在前面的文章彻底掌握Makefile(一)当中,我们简要的介绍了一些常见的makefile使用方法,在本篇文章当中我们将继续介绍一些makefile当中的常见用法 ...

  9. 3.云原生之Docker容器三大核心概念介绍

    转载自:https://www.bilibili.com/read/cv15181760/?from=readlist docker search --no-trunc=false [镜像名称] #搜 ...

  10. jumpserver设置某个用户登陆后,直接进入指定的服务器,不需要通过导航web终端--我的资产--服务器一连串的展开

    ssh jumpserverUsername@systemUsername@AssetIP@jumpserverHostIP -p2222 解释: - jumpserverUsername:登录 Ju ...