解决make: *** [Makefile:719: ext/openssl/openssl.lo] Error 1问题

 更新时间:2024年12月11日 11:55:59   作者:小 渣渣~  
在Ubuntu系统上编译安装PHP7.4.33时遇到OpenSSL库文件缺失的错误,因为Ubuntu22.04的默认OpenSSL版本与PHP不兼容,解决方法是安装低版本的openssl包,并在编译PHP时指定openssl路径

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.1.1/openssl-1.1.1.tar.gz

# tar -xvf openssl-1.1.1.tar.gz

# cd openssl-1.1.1

# ./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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Linux中shell解析脚本的通配符、元字符、转义符说明

    Linux中shell解析脚本的通配符、元字符、转义符说明

    这篇文章主要介绍了shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊字符变为普通字符,shell在解析脚本时会根据引号的不同进行不同的处理
    2025-01-01
  • Linux VPS下SSH常用命令整理

    Linux VPS下SSH常用命令整理

    学习完如何使用Putty远程(SSH)管理Linux VPS,今天继续为VPSer新手们整理一篇关于Linux VPS下SSH常用命令。
    2010-12-12
  • Shell中如何删除文本比较长的行的实现方法

    Shell中如何删除文本比较长的行的实现方法

    这篇文章主要介绍了 Shell中如何删除文本比较长的行的实现方法的相关资料,希望通过本文能帮助到大家,让大家掌握这部分内容,需要的朋友可以参考下
    2017-10-10
  • linux服务监控及运维

    linux服务监控及运维

    本文通过详细介绍安装psutil包到查找操作系统所有服务进行ID,提取监控等内容,接下来我们大家一起来学习吧
    2021-08-08
  • linux系统之如何禁用usb口

    linux系统之如何禁用usb口

    这篇文章主要介绍了linux系统之如何禁用usb口问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • 如何在Linux服务上管理Redis的启动、重启和关闭

    如何在Linux服务上管理Redis的启动、重启和关闭

    Redis是一个高性能的开源键值对存储数据库,广泛用于缓存、会话管理和实时数据处理等场景,本文将详细介绍如何在Linux系统上启动、重启和关闭Redis服务,并提供相关的配置和故障排除技巧,需要的朋友可以参考下
    2024-05-05
  • Ubuntu16.04上安装CUDA9.0 详细教程

    Ubuntu16.04上安装CUDA9.0 详细教程

    这篇文章主要介绍了Ubuntu16.04上安装CUDA9.0 详细教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Linux系统rsyslogd占用内存过高的问题排查及解决

    Linux系统rsyslogd占用内存过高的问题排查及解决

    syslogd不仅仅是记录kernel log的服务,还能记录user space中的日志,syslogd是Linux下的一个记录日志文件服务,新版本叫做rsyslogd,本文介绍了Linux系统rsyslogd占用内存过高的问题排查及解决,需要的朋友可以参考下
    2024-08-08
  • linux挂载新磁盘后原数据文件不见的解决办法

    linux挂载新磁盘后原数据文件不见的解决办法

    linux挂载新磁盘后原数据文件不见了,丢失了吗,没有,这篇文章就教你找回解决办法,文章中有详细的操作步骤,有不会找的小伙伴可以参考阅读本文
    2023-08-08
  • linux脚本基础详细介绍

    linux脚本基础详细介绍

    本文通过详细讲解linux脚本中的翻译字符、变量数组、各种命令设定等,现在我们大家一起来学习吧
    2021-08-08

最新评论