ruby3.2.2 报错 undefined symbol: EC_GROUP_new_curve_GF2m

一、执行ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION' 查看openssl版本时报错

bash 复制代码
ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION'

这是因为ruby内的openssl版本是3.2.0版本的

而自openssl3.0以后已经废弃 EC_GROUP_new_curve_GF2m了

二、解决方案

指定ruby内的openssl

进入到ruby的安装目录

bash 复制代码
cd /project_root/ruby-3.2.2/ext/openssl/

指定openssl, /usr/local/openssl 是我安装openssl的目录大家需要换成自己的

bash 复制代码
ruby extconf.rb --with-openssl-include=/usr/local/openssl/include/ --with-openssl-lib=/usr/local/openssl/lib
bash 复制代码
make && make install

三、查看ruby openssl版本有没有设置成功

bash 复制代码
ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION'

再次执行 ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION' 已经没有报错

此时我们的openssl已经指定成我们安装的1.1.1w版本

相关推荐
Methy3 小时前
IoTHub半个月崩了五次?都是裸rethrow惹的祸
服务器·c++·后端
Wang's Blog3 小时前
Java 项目实战: 外卖平台-后台系统登录功能开发
java·服务器·redis
天天喝旺仔4 小时前
Linux 性能排查实战:用 perf、strace 与火焰图定位 CPU、内存与 IO 瓶颈
linux·性能优化·运维开发
LuminousCPP4 小时前
Linux系统编程(二):从目录树到命令执行|路径、环境变量、alias 与文件操作入门
linux·经验分享·笔记
第十人i4 小时前
Linux 系统初始化配置清单:新服务器快速部署
linux·服务器
LongRunning4 小时前
【Linux】RK3568-OpenCV+YOLO(七)
linux
j7~4 小时前
【Linux】三十八.C++ 手写 HTTP 服务器:裸 socket + fork 多进程,从 HTTP 报文解析到浏览器打开网页
linux·网络·网络协议·学习·http·网络编程
傲世仙尊4 小时前
设计者的取舍-路径fork的诞生与全局文件队列
linux
蓝速科技4 小时前
会议室门牌签到功能选型与落地指南丨蓝速科技
大数据·运维·数据库·人工智能·科技
逐流人5 小时前
Containerd容器管理实战:从架构原理到nerdctlcrictl工具链
linux·运维·云原生·容器·云计算·containerd