添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

I'm getting an error while trying to install 2.3 ruby on osx I've updated rvm to stable 1.27.0

then I'm trying to install 2.3

% rvm install 2.3
ruby-2.3.0 - #removing src/ruby-2.3.0 - please wait
Searching for binary rubies, this might take some time.
No binary rubies available for: osx/10.11/x86_64/ruby-2.3.0.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for osx.
Certificates in '/usr/local/etc/openssl/cert.pem' are already up to date.
Requirements installation successful.
Installing Ruby from source to: /Users/password123/.rvm/rubies/ruby-2.3.0, this may take a while depending on your cpu(s)...
ruby-2.3.0 - #downloading ruby-2.3.0, this may take a while depending on your connection...
ruby-2.3.0 - #extracting ruby-2.3.0 to /Users/password123/.rvm/src/ruby-2.3.0 - please wait
ruby-2.3.0 - #configuring - please wait
ruby-2.3.0 - #post-configuration - please wait
ruby-2.3.0 - #compiling - please wait
Error running '__rvm_make -j 1',
showing last 15 lines of /Users/password123/.rvm/log/1460728216_ruby-2.3.0/make.log
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ossl_ssl.c:18:35: note: expanded from macro 'numberof'
#define numberof(ary) (int)(sizeof(ary)/sizeof((ary)[0]))
                                  ^~~~~
ossl_ssl.c:2266:21: error: invalid application of 'sizeof' to an incomplete type 'const struct (anonymous struct at ossl_ssl.c:85:14) []'
    for (i = 0; i < numberof(ossl_ssl_method_tab); i++) {
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ossl_ssl.c:18:35: note: expanded from macro 'numberof'
#define numberof(ary) (int)(sizeof(ary)/sizeof((ary)[0]))
                                  ^~~~~
4 warnings and 10 errors generated.
make[2]: *** [ossl_ssl.o] Error 1
make[1]: *** [ext/openssl/all] Error 2
make: *** [build-ext] Error 2
+__rvm_make:0> return 2
There has been an error while running make. Halting the installation.  

Could you advise me any steps to fix this error ?

Based on this rbenv discussion, I was able to work around this by uninstalling, reinstalling, and force-linking Homebrew OpenSSL:

brew uninstall --force openssl
brew install openssl
brew link --overwrite openssl --force
rvm install 2.3.0

I'd feel better if I knew what side effects the brew link might have, but it worked.

brew install openssl brew link --overwrite --force openssl rvm install 2.3.0 # (or rvm install 2.3.1)

Based on https://github.com/rvm/rvm/issues/3656

Help, me again. NOTE: You can ignore warning (brew link --overwrite --force openssl): Warning: Refusing to link: openssl Linking keg-only openssl means you may end up linking against the insecure, deprecated system OpenSSL while using the headers from Homebrew's openssl. Instead, pass the full include/library paths to your compiler e.g.: -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib – blackchestnut Jan 8, 2017 at 8:48

There are issues installing ruby <=2.3.0 compatibility with [email protected].

This worked for me

rvm install 2.3.0 --with-openssl-lib=/opt/local/lib/openssl --with-openssl-include=/opt/local/include/openssl

OpenSSL 1.1 isn’t compatible with Ruby 2.3.x checkout this issue here

I solved the issue on mac by using following command.

rvm reinstall ruby-2.3.8 --with-openssl-dir=`brew --prefix [email protected]` --debug

If you want more insights on the issue you can refer to this article https://mentalized.net/journal/2019/09/13/ruby-2-3-rvm-and-openssl-1-0/

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.