Ubuntu编译安装php7.4
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的更多相关文章
- Ubuntu编译安装PHP7
参数配置 ./configure --prefix=/usr/local/php7 \ --with-config-file-path=/usr/local/php7/etc \ --with-apx ...
- ubuntu编译安装php7遇到的问题及解决方案
configure: error: Cannot find OpenSSL's <evp.h> 这个可以在configure的时候,指定openssl的路径,查看openssl的安装路径: ...
- ubuntu编译安装php7, 安装openssl
sudo apt-get install openssl sudo apt-get install libssl-dev
- nginx php-fpm安装配置 CentOS编译安装php7.2
CentOS编译安装php7.2 介绍: 久闻php7的速度以及性能那可是比php5系列的任何一版本都要快,具体性能有多好,建议还是先尝试下再说.如果你是升级或新安装,那你首先需要考虑php7和程序是 ...
- 编译安装PHP7并安装Redis扩展Swoole扩展
编译安装PHP7并安装Redis扩展Swoole扩展 在编译php7的机器上已经有编译安装过php5.3以上的版本,从而依赖库都有了 本php7是编译成fpm-php 使用的, 如果是apache那么 ...
- 【安装PHP】如何在openSUSE42.1下编译安装PHP7
首先推荐一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog. 里面说到是否会去使用PHP7, ...
- 全志a20安卓电视盒子安装可道云kodexplorer服务-编译安装php7.3+nginx
可道云真的很强大,安装包很小,功能却很齐全,还可以自定义轻应用如果有手机客户端就更好了 研究了一下,可道云根目录放到外置存储设备(移动硬盘)会更合适,改路径的方法下面有提到上传文件时一个文件会在用户目 ...
- 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 ...
- 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 二.安装所需依 ...
随机推荐
- [RootersCTF2019]I_<3_Flask-1|SSTI注入
1.打开之后很明显的提示flask框架,但是未提供参数,在源代码中发现了一个git地址,打开之后也是没有啥用,结果如下: 2.这里我们首先需要爆破出来参数进行信息的传递,就需要使用Arjun这一款工具 ...
- Linux上安装jdk 1.8
1.下载jdk1.8 这里贴个oracle官网链接 https://www.oracle.com/java/technologies/downloads/ 里面的jdk版本基本都有 2.将压缩包上传 ...
- 端口安全 | DHCP snooping
1.端口安全用于防止mac地址的欺骗.mac地址泛洪攻击.主要思想就是在交换机的端口下通过手工或者自动绑定mac地址,这就就只能是绑定的mac地址能够通过. 2.通过静态的端口绑定:将mac地址手工静 ...
- 综合布线 子网掩码 IP地址 子网划分
1.1 地址协议 ipv4 :目前主流的协议 2. ipv6 :fe80::fe7:ca03:81f:2887 2 128 IANA(The Internet Assigned Numbers Aut ...
- Trigger Before 与 After 区别
用户在使用trigger时,经常会面临before or after的选择问题.二者有什么区别?从字面理解,before trigger 是在触发操作完成之前完成,而after 是在触发操作完成之后完 ...
- Sentinel源码分析-滑动窗口统计原理
滑动窗口技术是Sentinel比较关键的核心技术,主要用于数据统计 通过分析StatisticSlot来慢慢引出这个概念 @Override public void entry(Context con ...
- LibTorch | 使用神经网络求解一维稳态对流扩散方程
0. 写在前面 本文将使用基于LibTorch(PyTorch C++接口)的神经网络求解器,对一维稳态对流扩散方程进行求解.研究问题参考自教科书\(^{[1]}\)示例 8.3. 目录 0. 写在前 ...
- MAC Golang环境搭建
1. 下载golang 下载地址:https://golang.google.cn/dl/ 根据MAC左上角苹果图标->关于本机,即可查看芯片类型 2. 安装golang 在 下载 中双击 下载 ...
- [Linux]-screen命令-切换终端
在训练模型时,经常遇到需要采用多个策略同时跑的情况,直接运行的话比较费时,只要CPU和GPU支持,可以通过Linux的screen命令多终端并行,大大提升效率. 创建: screen -S name ...
- 如何使用 Git 管理配置文件
现在很多软件的配置都可以在线同步或者支持导入导出,可以很方便的在不同设备上使用.但电脑上还有很多本地配置文件没有办法同步,夸多个设备使用时很难保持一致,换电脑也很麻烦.其实可以使用 Git 来管理这些 ...