Estoy usando rails3 por primera vez (he estado usando rails2 durante años) dentro de un rvm. Tratando de iniciar la consola, me sale este error:Rails3 y problema de lectura
require': no such file to load -- readline
Googled alrededor y esto parece ser un problema común. La mayoría de las soluciones parecen implicar 1) instalar el siguiente: instalado en readline sudo apt-get install libncurses5-dev libreadline5-dev
2) ir a la carpeta joya para readline, corriendo ruby extconf.rb
que genera un archivo MAKE 3) haciendo make
y make install
Ahora, yo no tenía mi rvm, así que traté de instalarlo. Pero no pude determinar qué es la gema: gem install readline
no da ningún resultado. El único que encontré fue gem install rdp-rb-readline
. Instalé las dos bibliotecas de desarrollo, instalé la gema rdp-rb-readline, fui a la siguiente carpeta gema y ejecuté ruby extconf.rb
. Esto de hecho generó un archivo MAKE. Pero no puedo make
o make install
: i obtener estos errores:
max-laptop:readline$ make cc -I. -I. -I/usr/lib/ruby/1.8/i486-linux -I. -DHAVE_READLINE_READLINE_H -DHAVE_READLINE_HISTORY_H -DHAVE_RL_FILENAME_COMPLETION_FUNCTION -DHAVE_RL_USERNAME_COMPLETION_FUNCTION -DHAVE_RL_COMPLETION_MATCHES -DHAVE_RL_DEPREP_TERM_FUNCTION -DHAVE_RL_COMPLETION_APPEND_CHARACTER -DHAVE_RL_BASIC_WORD_BREAK_CHARACTERS -DHAVE_RL_COMPLETER_WORD_BREAK_CHARACTERS -DHAVE_RL_BASIC_QUOTE_CHARACTERS -DHAVE_RL_COMPLETER_QUOTE_CHARACTERS -DHAVE_RL_FILENAME_QUOTE_CHARACTERS -DHAVE_RL_ATTEMPTED_COMPLETION_OVER -DHAVE_RL_LIBRARY_VERSION -DHAVE_RL_EVENT_HOOK -DHAVE_RL_CLEANUP_AFTER_SIGNAL -DHAVE_RL_CLEAR_SIGNALS -DHAVE_RL_VI_EDITING_MODE -DHAVE_RL_EMACS_EDITING_MODE -DHAVE_REPLACE_HISTORY_ENTRY -DHAVE_REMOVE_HISTORY -fPIC -fno-strict-aliasing -g -g -O2 -fPIC -c readline.c readline.c: In function ‘readline_readline’: readline.c:82: error: ‘rb_io_t’ undeclared (first use in this function) readline.c:82: error: (Each undeclared identifier is reported only once readline.c:82: error: for each function it appears in.) readline.c:82: error: ‘ofp’ undeclared (first use in this function) readline.c:82: error: ‘ifp’ undeclared (first use in this function) make: *** [readline.o] Error 1
poco atascado ahora. ¿Me falta algo fundamental que necesito para hacer las bibliotecas necesarias/gema/lo que sea?
agradecido por cualquier consejo - max
SOLUCIÓN: que en realidad sólo resolvió este - He desinstalado la gema RDP-rb-readline, entonces hice gem install rb-readline
, luego agregó gem 'rb-readline'
a Gemfile de mi aplicación. Supongo que solo necesitaba saber dónde buscar la línea de lectura si no estaba en el lugar habitual. No necesité hacer nada con extconf.rb, lo cual es bueno porque la gema rb-readline no tiene una.
Dejé esto al final de mi pregunta porque a) alguien más podría tener una mejor comprensión del problema en lugar de mi enfoque de prueba y error yb) en caso de que alguien más tenga el mismo problema.
De hecho acabo de resolver esto - solución agregada a OP –
¿dónde estaba la "carpeta de gem posterior"? – rogerdpack
@rogerdpack - ya no lo tengo, pero hubiera sido '/home/max/.rvm/gems/ruby-1.9.2-p0/gems/rdp-rb-readline-' –