Install ruby < 3 Can't find openssl even with the dir option
dinshaw-he opened this issue · comments
Super excited to try out Frum. I'm having trouble installing rubies < 3
On a fresh install of Montery - Intel chip:
Installing 3.0.2 works just fine.
Installing 2.7.3 or 2.7.4 fails with cannot load such file -- openssl
. I have tried different versions of openssl. I have tried with and without the --openssl-dir flag. The factory openssl is:
$ openssl
OpenSSL> version
LibreSSL 2.8.3
The error I get is:
error: Can't build Ruby: make install:
Generating RI format into /Users/me/.frum/versions/.downloads/.tmpJiqTtk/ruby-2.7.3/.ext/rdoc...
/Users/me/.frum/versions/.downloads/.tmpJiqTtk/ruby-2.7.3/lib/rubygems/core_ext/kernel_require.rb:83:in `require': cannot load such file -- openssl (LoadError)
from /Users/me/.frum/versions/.downloads/.tmpJiqTtk/ruby-2.7.3/lib/rubygems/core_ext/kernel_require.rb:83:in `require'
from /Users/me/.frum/versions/.downloads/.tmpJiqTtk/ruby-2.7.3/lib/rubygems/specification.rb:2430:in `to_ruby'
from ./tool/rbinstall.rb:846:in `block (2 levels) in install_default_gem'
from ./tool/rbinstall.rb:279:in `open_for_install'
from ./tool/rbinstall.rb:845:in `block in install_default_gem'
from ./tool/rbinstall.rb:835:in `each'
from ./tool/rbinstall.rb:835:in `install_default_gem'
from ./tool/rbinstall.rb:799:in `block in <main>'
from ./tool/rbinstall.rb:950:in `block in <main>'
from ./tool/rbinstall.rb:947:in `each'
from ./tool/rbinstall.rb:947:in `<main>'
make: *** [do-install-all] Error 1
I think this is because openssl@3 was released to Homebrew. I could reproduce this problem locally. The workaround for this issue is to run frum like the following. I will fix this problem as soon as possible.
$ frum install 2.7.0 --with-openssl-dir=$(brew --prefix openssl@1.1)
I think this is because openssl@3 was released to Homebrew. I could reproduce this problem locally. The workaround for this issue is to run frum like the following. I will fix this problem as soon as possible.
$ frum install 2.7.0 --with-openssl-dir=$(brew --prefix openssl@1.1)
That worked, thank you!