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

相关推荐
朝九晚五ฺ10 分钟前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
自由的dream14 分钟前
Linux的桌面
linux
xiaozhiwise44 分钟前
Makefile 之 自动化变量
linux
意疏3 小时前
【Linux 篇】Docker 的容器之海与镜像之岛:于 Linux 系统内探索容器化的奇妙航行
linux·docker
BLEACH-heiqiyihu3 小时前
RedHat7—Linux中kickstart自动安装脚本制作
linux·运维·服务器
一只爱撸猫的程序猿3 小时前
一个简单的Linux 服务器性能优化案例
linux·mysql·nginx
我的K84095 小时前
Flink整合Hudi及使用
linux·服务器·flink
1900435 小时前
linux6:常见命令介绍
linux·运维·服务器
Camellia-Echo5 小时前
【Linux从青铜到王者】Linux进程间通信(一)——待完善
linux·运维·服务器