52 votes

Problèmes avec la console de rails, RVM et readline

J'ai installé rvm comme un moyen de faire en sorte que mon local de développement de la version de ruby est le même que mon serveur pour une application en particulier, je travaille sur (ruby 1.8.7). J'ai fait cela, et installé ruby 1.8.7 ok. Cependant, lorsque j'essaie de démarrer la console rails, j'obtiens cette erreur:

Readline was unable to be required, if you need completion or history install readline then reinstall the ruby.
You may follow 'rvm notes' for dependencies and/or read the docs page http://rvm.beginrescueend.com/packages/readline/ . Be sure you 'rvm remove X ; rvm install X' to re-compile your ruby with readline support after obtaining the readline libraries.
Couldn't load Wirble: no such file to load -- wirble

J'ai lu les notes sur la page d'erreur fait référence à (http://rvm.beginrescueend.com/packages/readline/), et suivi les instructions, qui concernent essentiellement l'installation de readline, la désinstallation de ruby 1.8.7, puis l'installation de ruby 1.8.7 à nouveau avec readline soutien. (en fait, cette page utilise ruby 1.9.2 comme un exemple, mais je suis en supposant qu'il devrait travailler avec 1.8.7. Peut-être que ce n'est pas le cas).

Mais, j'obtiens toujours la même erreur. Quelqu'un at-il vécu cela et compris?
Reconnaissant pour tout conseil - max

EDIT - je suis sous Ubuntu 9.10 btw dans le cas où c'est pertinent.

EDIT - voici mon résultat pour rvm info comme demandé ci-dessous:

$ rvm info

system:

  system:
    uname:       "Linux max-laptop 2.6.31-22-generic #68-Ubuntu SMP Tue Oct 26 16:38:35 UTC 2010 i686 GNU/Linux"
    bash:        "/bin/bash => GNU bash, version 4.0.33(1)-release (i486-pc-linux-gnu)"
    zsh:         " => not installed"

  rvm:
    version:      "rvm 1.1.6 by Wayne E. Seguin (wayneeseguin@gmail.com) [http://rvm.beginrescueend.com/]"

  homes:
    gem:          "not set"
    ruby:         "not set"

  binaries:
    ruby:         "/usr/bin/ruby"
    irb:          "/usr/bin/irb"
    gem:          "/usr/bin/gem"
    rake:         "/usr/bin/rake"

  environment:
    PATH:         "/home/max/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/var/lib/gems/1.8/bin:/home/max/software/svnmerge:/home/max/.gem/ruby/1.8/bin:/home/max/work/e_learning_resource/trunk/public/assets/dvd_files/bin:/opt/firefox:/home/max/.rvm/bin:/home/max/.rvm/bin"
    GEM_HOME:     ""
    GEM_PATH:     ""
    MY_RUBY_HOME: ""
    IRBRC:        ""
    RUBYOPT:      ""
    gemset:       ""

67voto

Geoff Lanotte Points 5531

J'ai eu un problème similaire il était avec 1.9.2 sur Ubuntu 10.04, mais les symptômes étaient identiques. Afin de l'obtenir pour fonctionner:

rvm pkg install readline

ou avant RVM version 1.6.32, vous avez besoin de la commande suivante

rvm package install readline

Alors:

apt-get install ncurses-dev

Et puis la prise de leurs instructions à http://rvm.beginrescueend.com/packages/readline/

cd $HOME/.rvm/src/ruby-1.9.2-p0/ext/readline
ruby extconf.rb -- --with-readline-dir="$HOME/.rvm/usr"
make install

En fait, j'avais fait un système rvm install sur le serveur, j'ai donc besoin de le faire:

cd $HOME/.rvm/src/ruby-1.9.2-p0/ext/readline
ruby extconf.rb -- --with-readline-dir="/usr/local/rvm/usr"
make install

Après que j'ai pu avoir un accès complet à la console.

10voto

Sayuj Points 2134

Lancer la commande

 rvm requirements
 

Il montre les exigences et les dépendances. Installez-les et réinstallez le ruby sur rvm

 rvm remove 1.9.2
rvm install 1.9.2
 

Ça marche!

4voto

Race Points 487

J'ai le même problème et je l'ai résolu. Je vérifie http://rvm.beginrescueend.com/packages/readline/ S'il vous plaît vérifier suivez 2 choses:

  1. sudo aptitude install libreadline5-dev libncurses5-dev utilise libreadline6-dev , si vous avez une nouvelle version.
  2. ruby extconf.rb -- --with-readline-dir='/home/youruser/.rvm/usr/include/readline' assurez-vous que vous avez les fichiers lib readline sous le répertoire with-readline-dir que vous avez indiqué.

0voto

geekazoid Points 476
 Readline was unable to be required, if you need completion or history install readline then reinstall the ruby.
You may follow 'rvm notes' for dependencies and/or read the docs page https://rvm.io/packages/readline/ . Be sure you 'rvm remove X ; rvm install X' to re-compile your ruby with readline support after obtaining the readline libraries.
 

Si vous suivez ce lien , vous trouverez des instructions pour résoudre ce problème. Ce qui a fonctionné pour moi a été la première étape, en supprimant tous les packages installés manuellement:

  $ rm -rf $rvm_path/usr
 

et alors

 $ rvm requirements
$ rvm reinstall 1.9.3
 

Esperons que ça marche!

0voto

Sudhir Points 512

Essayé gem install rb-readline

N'a toujours pas de travail. Ainsi a commencé la cisr et n'a besoin que d'readline. Le message d'erreur aidé.

    Readline was unable to be required, if you need completion or history install readline then reinstall the ruby.
You may follow 'rvm notes' for dependencies and/or read the docs page https://rvm.io/packages/readline/ . Be sure you 'rvm remove X ; rvm install X' to re-compile your ruby with readline support after obtaining the readline libraries.
1.9.3p327 :001 > require 'readline'
LoadError: /usr/local/lib/libreadline.so.6: undefined symbol: UP - /home/sudhir/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/site_ruby/1.9.1/x86_64-linux/readline.so
    from /home/sudhir/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /home/sudhir/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from (irb):1
    from /home/sudhir/.rvm/rubies/ruby-1.9.3-p327/bin/irb:16:in `<main>'
1.9.3p327 :002 > ^[[6^[[A^[[A^[[B^C^C

Donc, le problème dans mon cas était de tous les libreadline* dans /usr/local/lib. J'avais installé readline à partir du code source et c'était tout gâcher.

Suivre les instructions ci-dessous pour le réparer. http://vkarthickeyan.wordpress.com/2012/02/16/mysql-symbol-lookup-error-usrlocalliblibreadline-so-6-undefined-symbol-up/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X