在ubuntu盒子里做了几天没什么事后,我决定尝试一些红宝石的东西。为此,我想开火pry
。不幸的是,我被提出了
抱歉,您不能在没有Readline或兼容库的情况下使用Pry。 请
gem install rb-readline
或重新编译Ruby --with-readline。〜/ .rbenv /版本/ 2.1.1 / LIB /红宝石/ 2.1.0 /的rubygems / core_ext / kernel_require.rb:55:在 `require':libreadline.so.5:无法打开共享对象文件:没有这样的 文件或目录 - 〜/ .rbenv /版本/ 2.1.1 / LIB /红宝石/ 2.1.0 / x86_64的-LINUX / readline.so (LoadError)
一般来说,对linux很陌生,我认为我只是按照它的说法去做,然后安装rb-readline
。安装通过很好,但似乎根本没有做任何事情。如果我执行gem list p
,那么套餐就不会出现。
所以是的,我只是不知道如何让它再次运作,我唯一能通过搜索找到的东西与没有rbenv的安装有关,并且与sudo等有关。< / p>
有什么想法吗?
答案 0 :(得分:8)
不理解问题并遵循信息选项2中的建议:
Sorry, you can't use Pry without Readline or a compatible library.
Possible solutions:
* Rebuild Ruby with Readline support using `--with-readline`
* Use the rb-readline gem, which is a pure-Ruby port of Readline <==== Option 2
* Use the pry-coolline gem, a pure-ruby alternative to Readline
我将gem添加到Gemfile中(如下所示),捆绑后可以使用pry。
group :development, :test do
gem 'pry'
gem 'rb-readline'
end
答案 1 :(得分:6)
我也有这个问题。我正在使用rbenv并通过
重新安装ruby rbenv install -f 2.2.3
确实为我修好了。当然,您已经加入了各自的版本。 -f强制安装,即使您已安装该特定版本。使用rbenv global
查找已安装和设置的版本。
答案 2 :(得分:1)
我有问题。但是我不想添加gem'rb-readline'。试试吧...
$ ln -s /usr/local/opt/readline/lib/libreadline.8.0.dylib /usr/local/opt/readline/lib/libreadline.7.dylib
答案 3 :(得分:0)
做一个sudo apt-get install libreadline-dev
,好像你错过了pry想要的readline共享库。如果以前有用,不知道为什么图书馆不再存在了。
答案 4 :(得分:0)
我最后做了rbenv uninstall
,然后是rbenv install
并重新安装了所有宝石,然后重新开始工作。仍然不知道是什么原因引起了它,但它现在有效。