简体   繁体   中英

How to install rvm install 2.1.1 on ubuntu 19.04

While installing ruby version 2.1.1 on ubuntu 19.04, getting error -

rvm install ruby-2.1.1
Searching for binary rubies, this might take some time.
No binary rubies available for: ubuntu/19.04/x86_64/ruby-2.1.1.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for ubuntu.
Removing undesired packages: libssl-dev....
Installing requirements for ubuntu.
Updating system....
Installing required packages: libssl1.0-dev....
Error running 'requirements_debian_libs_install libssl1.0-dev',
please read /home/user/.rvm/log/1560773845_ruby-2.1.1/package_install_libssl1.0-dev.log
Requirements installation failed with status: 100.

You can install previous versions of Ruby following this instructions posted on this RVM github issue: https://github.com/rvm/rvm/issues/4680#issuecomment-515951866

I did the same as @grhansen suggested. I was installing ruby 2.3 and that required libssl1.0-dev. I am using Ubuntu 19.04. So I opened my /etc/apt/sources.list by

sudo nano /etc/apt/sources.list .

And then add the following line at the end of the file

deb http://security.ubuntu.com/ubuntu bionic-security main .

After that I run the command

sudo apt update

from the terminal. Then I run the command

apt-cache policy libssl1.0-dev

from the terminal and I got the following output

libssl1.0-dev: Installed: (none) Candidate: 1.0.2n-1ubuntu5.3 Version table: 1.0.2n-1ubuntu5.3 500 500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages

Then I run the command

sudo apt-get install libssl1.0-dev

And it is installed then

Before adding I was getting

libssl1.0-dev: Installed: (none) Candidate: (none) Version table:

At this moment, it is no longer possible to install old rubies on recent Ubuntu. If you need to run old rubies, I recommend you stick with Ubuntu 18.04 LTS, on which you can still install any ruby you want.

2.1.x, 2.2.x and 2.3.x no longer installs on 19.04

We would need a custom openssl 1.1 patch, I'm not sure if someone will work on this. Most of the ruby community is ready to move forward.

For production environment you should stick to LTS releases for sure.

When 20.04 LTS comes out, ruby 2.4 will be unsupported by the ruby-core team itself.

https://www.ruby-lang.org/en/news/2019/03/31/support-of-ruby-2-3-has-ended/

From Ubuntu 19.04 and onward, rvm install 2.4.6 is your oldest option, rvm install 2.6.3 is the current recommended release

On my Ubuntu 18.04 I have

ubuntu@ip-w-x-y-z:~$ rvm list 
   ruby-2.0.0-p648 [ x86_64 ]
   ruby-2.1.8 [ x86_64 ]
   ruby-2.2.10 [ x86_64 ]
   ruby-2.2.4 [ x86_64 ]
   ruby-2.3.8 [ x86_64 ]
   ruby-2.4.6 [ x86_64 ]
=* ruby-2.6.3 [ x86_64 ]

On my 19.04 laptop I have

ubuntu@ip-w-x-y-z:~$ rvm list 
=> ruby-2.4.6 [ x86_64 ]
   ruby-2.5.5 [ x86_64 ]
 * ruby-2.6.3 [ x86_64 ]
   ruby-2.7.0-preview1 [ x86_64 ]

Update for Ubuntu 22.04 -- I could install all rubies from 1.9.3 to 3.1.2

For ruby 2.4.x -> 3.0.4, I used openssl 1.1.1g. You also have the option to compile without SSL and later install the openssl gem, which is automatically compiled with OpenSSL 3.0.

For ruby 1.9.3 -> 2.3.8, I used openssl 1.0.2u. You need to build with the option -fPIC otherwise, it won't build.

Download from there https://www.openssl.org/source/old/

Extract and build like this.

./config --prefix=~/.openssl/openssl-1.0.2u -fPIC
make && make install
rvm install 2.1.10 --movable --with-openssl-dir=$HOME/.openssl/openssl-1.0.2u
mathieu:openssl-1.0.2u :-) (lifebook-wu2) $ cat /etc/issue.net 
Ubuntu 22.04 LTS
mathieu:openssl-1.0.2u :-) (lifebook-wu2) $ rvm list 
   ruby-1.9.3-p551 [ x86_64 ]
=> ruby-2.0.0-p648 [ x86_64 ]
   ruby-2.1.10 [ x86_64 ]
   ruby-2.2.10 [ x86_64 ]
   ruby-2.3.8 [ x86_64 ]
   ruby-2.4.10 [ x86_64 ]
   ruby-2.5.9 [ x86_64 ]
   ruby-2.6.10 [ x86_64 ]
   ruby-2.6.9 [ x86_64 ]
   ruby-2.7.5 [ x86_64 ]
   ruby-2.7.6 [ x86_64 ]
   ruby-3.0.3 [ x86_64 ]
   ruby-3.0.4 [ x86_64 ]
 * ruby-3.1.2 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

mathieu:openssl-1.0.2u :-) (lifebook-wu2) $ 

I think you should try rvm install 2.1.1 instead of rvm install ruby-2.1.1

you can find more about setup for ruby at here:

https://gorails.com/setup/ubuntu/19.04

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM