rbenv fails to install 3.3.1 on Ubuntu 24.04 because openssh builds a lib64 directory but ruby expects a lib directory #2376
-
I installed ruby-build from git into ~/.rbenv/plugins/ruby-build and tried installing ruby 3.3.1 on a freshly-installed Ubuntu 24.04 VM using rbenv, but it failed due to an inability to find the openssh/lib directory (see attached log). The issue is that openssh is building with a lib64 directory instead of a lib directory. Manually linking lib64 to lib while the ruby source tarball is being downloaded fixes the issue:
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
same problem here with ruby 3.2.5 on ubuntu 24, above fixed it, but you have to be fast enough. |
Beta Was this translation helpful? Give feedback.
-
Hi both, thanks for reporting. Apparently this is something due to "multilib" support in OpenSSL build system. I've opened a PR to fix this: #2452 I guess that most Linux users didn't come across this because they already had OpenSSL installed on their system? In the meantime, two different workarounds that come to my mind:
|
Beta Was this translation helpful? Give feedback.
Hi both, thanks for reporting. Apparently this is something due to "multilib" support in OpenSSL build system. I've opened a PR to fix this: #2452
I guess that most Linux users didn't come across this because they already had OpenSSL installed on their system?
In the meantime, two different workarounds that come to my mind:
Install
libssl-dev
via your package manager. This is much faster than having ruby-build compile its own OpenSSL, and results in all Ruby versions on this system linking to a shared, system OpenSSL version that your package manager will continue to upgrade.Run ruby-build with
OPENSSL_CONFIGURE_OPTS="--libdir=lib"
set. This is only a temporary workaround until ruby-…