Readline not working in rvm - Ubuntu 11.10

2020-03-01 07:51发布

I am using rvm on my ubyntu 11.10. My readline is not working, I tried ruby extconf.rb but it is not passed. Output is bellow:

$ ruby extconf.rb 
checking for tgetnum() in -lncurses... yes
checking for readline/readline.h... yes
checking for readline/history.h... yes
checking for readline() in -lreadline... no
checking for readline() in -ledit... no
checking for editline/readline.h... no

I tried installing libncurses5-dev & libreadline5-dev

$ sudo apt-get install libncurses5-dev libreadline5-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libreadline5-dev is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  libreadline-gplv2-dev:i386 lib64readline-gplv2-dev:i386 libreadline-gplv2-dev

E: Package 'libreadline5-dev' has no installation candidate

What is the problem here? Can anyone help?

6条回答
Luminary・发光体
2楼-- · 2020-03-01 08:25

I tried everything, but it didn't work. I had to do rvm implode (after having all the requirements installed) and then rvm install 1.8.7; rvm install 1.9.3 and it wor

查看更多
太酷不给撩
3楼-- · 2020-03-01 08:28

Same issue as here Readline errors prevent me running rails console

Under ubuntu you can use the system readline installation.

rvm uninstall ${YOURUBYVERSION}
sudo apt-get install libreadline-dev
rvm install ${YOURUBYVERSION} --with-readline-dir=/usr/include/readline

Substitute ${YOURUBYVERSION} with your desired ruby version.

查看更多
仙女界的扛把子
4楼-- · 2020-03-01 08:31

For some reason I can't comment on @zzeroo's answer, but I want to draw attention to the fact that he's using

 --with-readline-dir=/usr/include/readline

instead of

--with-readline-dir=$rvm_path/usr

I was banging my head against the wall for a long time and changing this fixed it for me.

查看更多
乱世女痞
5楼-- · 2020-03-01 08:32

I've googled for a couple days, but no answers helps me, so my solution was:

Fully remove rvm How to remove rvm

Remove all ruby packages. First, find out which packages do you have:

dpkg -l | grep ruby

then make

sudo apt-get purge {PACKAGE}

where {PACKAGE} is package you want to remove ( for me there were ruby ruby1.8 ruby1.9.1 )

Then I made fresh installation of RVM Install RVM and installed ruby 1.9.2 with

rvm install 1.9.2

Now it should work!

查看更多
老娘就宠你
6楼-- · 2020-03-01 08:33

I got the solution:

Run the command

rvm requirements

It shows the requirements and dependencies. Install those and reinstall the ruby on rvm

rvm remove 1.9.2
rvm install 1.9.2

It works!

查看更多
【Aperson】
7楼-- · 2020-03-01 08:45

Have you tried:

rvm pkg install readline

Then install ruby through RVM --with-readline-dir=$rvm_path/usr?

http://beginrescueend.com/packages/readline/

FWIW, I'd suggest giving rbenv + ruby-build a go, if you've never considered it. A lot less headaches than with RVM.

查看更多
登录 后发表回答