Ruby 在 macOS Big Sur 中安装 (2.2.2) 失败

Ruby installation (2.2.2) fails in macOS Big Sur

我 运行 在 macOS Big Sur 上安装 Ruby 2.2.2 时遇到了一些问题。有没有人遇到过他们能够解决的类似问题?非常感谢

错误:

`Downloading openssl-1.0.2u.tar.gz...
-> https://dqw8nmjcqpjn7.cloudfront.net/ecd0c6ffb493dd06707d38b14bb4d8c2288bb7033735606569d8f90f89669d16
Installing openssl-1.0.2u...
Installed openssl-1.0.2u to /Users/findum/.rbenv/versions/2.2.2

Downloading ruby-2.2.2.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.2.tar.bz2
Installing ruby-2.2.2...

WARNING: ruby-2.2.2 is past its end of life and is now unsupported.
It no longer receives bug fixes or critical security updates.

ruby-build: using readline from homebrew

BUILD FAILED (macOS 11.1 using ruby-build 20201225)

Inspect or clean up the working tree at /var/folders/x8/g8yqvrh55gq0wds4hny1t94r0000gn/T/ruby-build.20210101111906.42540.uFRvAN
Results logged to /var/folders/x8/g8yqvrh55gq0wds4hny1t94r0000gn/T/ruby-build.20210101111906.42540.log

Last 10 log lines:
compiling ../.././ext/psych/yaml/parser.c
linking shared-object json/ext/parser.bundle
linking shared-object pathname.bundle
installing default psych libraries
linking shared-object json/ext/generator.bundle
linking shared-object bigdecimal.bundle
linking shared-object psych.bundle
linking shared-object nkf.bundle
linking shared-object date_core.bundle
make: *** [build-ext] Error 2`

编辑

OP 似乎编辑了原始消息中的错误,因此以下答案不再相关。留在这里留给子孙后代。


更新答案

基于 rbenv 存储库中 Github 个问题的讨论,

听起来 Apple 更改了默认 CFLAGS 作为 xcode 12 的一部分,这使得一些本机扩展安装变得混乱。听起来这些问题中提出的解决方案是

CFLAGS="-Wno-error=implicit-function-declaration" rbenv install 2.2.2

原回答

错误表明由于扩展问题而失败

The Ruby readline extension was not compiled.
The Ruby zlib extension was not compiled.
ERROR: Ruby install aborted due to missing extensions

所以我建议先尝试手动安装这些扩展,然后重试 ruby 安装。

搭配酿造:

brew install readline
brew install zlib

关于 ruby-build 的 github 的一些问题可能也有帮助: