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版本

相关推荐
网络小白不怕黑4 小时前
Docker容器网络:四大模式解析与自定义网络
运维·docker·容器
徐子元竟然被占了!!4 小时前
Linux-systemctl
linux·数据库·oracle
_w_z_j_7 小时前
Linux----mmap
linux
FeelTouch Labs8 小时前
Nginx核心架构设计
运维·前端·nginx
程序员zgh8 小时前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
gwd2008 小时前
如何快速设置 Docker 代理设置
运维·人工智能·docker·容器
Bigan(安)8 小时前
【奶茶Beta专项】【LVGL9.4源码分析】09-core-obj_class对象类系统
linux·c语言·mcu·arm·unix
紫郢剑侠8 小时前
飞秋@Windows +iptux@Linux,打造内网跨平台IM环境
linux·运维·服务器·im·qq
保持低旋律节奏8 小时前
linux——调试
linux·运维·服务器