在Kubuntu 22.04中使用asdf安装Ruby 2.6.4失败求助
解决Kubuntu 22.04下asdf安装Ruby 2.6.4的下载失败问题
1. 换用wget/curl替代aria2下载
asdf-ruby默认用aria2拉取源码包,大概率是aria2的网络配置或兼容性问题,直接强制用wget或者curl下载:
- 用wget的命令:
ASDF_RUBY_BUILD_DOWNLOADER=wget asdf install ruby 2.6.4 - 用curl的命令:
ASDF_RUBY_BUILD_DOWNLOADER=curl asdf install ruby 2.6.4
2. 手动下载源码包到缓存目录
如果换下载工具还是不行,直接手动把源码包放到asdf的缓存路径,跳过下载步骤:
- 先创建缓存目录(如果不存在):
mkdir -p ~/.asdf/downloads/ruby/ - 用wget下载源码包到该目录:
wget https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.4.tar.bz2 -P ~/.asdf/downloads/ruby/ - 再执行安装命令(记得带上openssl路径参数):
RUBY_CONFIGURE_OPTS=--with-openssl-dir=/opt/openssl-1.1.1n asdf install ruby 2.6.4
3. 补全系统依赖
Kubuntu 22.04默认缺少部分Ruby编译所需的依赖,先安装:
sudo apt install build-essential libssl-dev libreadline-dev zlib1g-dev libyaml-dev libffi-dev
另外确认你手动编译的openssl 1.1.1n目录下,include/openssl和lib/libssl.so这些文件存在,确保编译Ruby时能找到依赖。
4. 更新asdf-ruby插件
重新更新ruby插件到最新版本,再尝试安装:
asdf plugin update ruby
然后结合下载工具和openssl参数执行:
RUBY_CONFIGURE_OPTS=--with-openssl-dir=/opt/openssl-1.1.1n ASDF_RUBY_BUILD_DOWNLOADER=wget asdf install ruby 2.6.4
内容的提问来源于stack exchange,提问作者lelouvincx
相关产品推荐
相关产品推荐

