Closed tsvallender closed 8 months ago
After a little more investigation, this is likely relevant:
ldd /tmp/ruby-build.20240319084848.25667.bjUEBD/ruby-2.2.10/.ext/x86_64-linux/openssl.so
linux-vdso.so.1 (0x00007ffcd4b29000)
libssl.so.1.0.0 => not found
libcrypto.so.1.0.0 => not found
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007fb10c8a8000)
libm.so.6 => /lib64/libm.so.6 (0x00007fb10c7bf000)
libc.so.6 => /lib64/libc.so.6 (0x00007fb10c400000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb10c94e000)
After manually installing the same version of OpenSSL in /opt, I’ve managed to get the Ruby version installed with the following:
LD_LIBRARY_PATH=/opt/openssl-1.0.2u/lib/ RUBY_CONFIGURE_OPTS=--with-openssl-dir=/opt/openssl-1.0.2u/ rbenv install
Is it possible to get rbenv doing this automatically?
Is it possible to get rbenv doing this automatically?
Hi, thanks for sharing the problem and how you solved it. It's possible that we could amend LD_LIBRARY_PATH from rbenv, but seeing how only Ruby 2.2 is affected (that we know so far) and that that version is many years past its End of Life, I would vote that we make no changes to ruby-build and offset this responsibility to the user. Old versions of Ruby (and old versions of OpenSSL that it needs) are notoriously difficult to compile on modern platforms and we don't really have the resources to flawlessly support compiling them from ruby-build.
If you encounter this or similar problem when compiling a more recent version of Ruby, we can consider setting better defaults for environment variables from ruby-build if that would help the user.
I’m attempting to install this ancient version of Ruby and hitting this issue.
Initial output of
rbenv install
:The referenced log file ends with:
The file
/tmp/rubybuild.20240318154710.5688.egFgj5/ruby2.2.10/.ext/x86_64linux/openssl.so
does exist, however. Is that the file it’s claiming doesn’t exist?