make: *** [Makefile:719: ext/openssl/openssl.lo] Error 1

在ubuntu系统上编译安装PHP7.4.33时,会报错如下

make: *** Makefile:719: ext/openssl/openssl.lo Error 1

原因分析:这个错误提示的意思是PHP配置过程中缺少OpenSSL库文件,因此在编译过程中出现了问题;Ubuntu 22.04 中openssl默认版本是OpenSSL 3.3,与php7.4.33不兼容,支持 SSL 的 Ubuntu 7.4 上的自定义路径中从源代码构建 PHP 33.22.04 会导致在 PHP 中使用 SSL 功能时出错(即简单的 )

解决方法:安装低版本的openssl包,在编译php时指定openssl路径

wget https://www.openssl.org/source/old/1.0.1/openssl-1.0.1e.tar.gz

tar -xvf openssl-1.0.1e.tar.gz

cd openssl-1.0.1e

./Configure --prefix=/opt/build --openssldir=/opt/build -fPIC -shared linux-x86_64 -Wl,--enable-new-dtags,-rpath,'/opt/build/lib';

make && make install

注意:如果报以下错,执行以下命令解决

OD document had syntax errors at /usr/bin/pod2man line 69.make: * install_docs Error1

mv /usr/bin/pod2man /tmp

make install

重新编译php,指定openssl路径为/opt/build即可

export PKG_CONFIG_PATH=/opt/build/lib/pkgconfig;

export LD_LIBRARY_PATH=/opt/build/lib;

export OPENSSL_CONF=/etc/ssl

./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-openssl=/opt/build --enable-gd pdo_sqlite --with-jpeg && make && make install

相关推荐
xx~t25 分钟前
嵌入式学习——ARM1
linux·arm开发·嵌入式硬件·arm
xx~t28 分钟前
嵌入式——ARM1(详细篇)
linux·arm开发·嵌入式硬件·arm
DYWorker0014 小时前
Linux驱动子系统:DMA-Buf —— Consumer和Provider(008)
linux·驱动开发
雯宝4 小时前
Linux 内核函数集
linux
GeW5 小时前
从挂科到高分通过:RHCE快速拿证的10个提分技巧
linux
我本善良ab5 小时前
PVE使用GRUB如何复位ubuntu的管理员密码?
ubuntu·忘记密码
鸠摩智首席音效师6 小时前
Linux /etc/nsswitch.conf 文件有什么作用 ?
linux
东城居士6 小时前
理解pinctrl和gpio子系统驱动
linux·嵌入式系统
H_oRIZoN_6 小时前
Linux入门DAY43 ARM 架构基础、寄存器、大小端、异常向量、交叉编译
linux·arm·linux应用编程
ι:6 小时前
NUC12 Pro 安装 Ubuntu 24.04 LTS 详细教程
linux·windows·ubuntu·nuc