Forget everything that you hear about any logic, just look here and do the same step by step:
(ubuntu x64): $ 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 $ sudo aptitude install libedit-dev .. $ 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... yes checking for rl_getc_function() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_filename_completion_function() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_username_completion_function() in stdio.h,readline/readline.h,readline/history.h... no checking for rl_completion_matches() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_refresh_line() in stdio.h,readline/readline.h,readline/history.h... no checking for rl_deprep_term_function in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_completion_append_character in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_basic_word_break_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_completer_word_break_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_basic_quote_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_completer_quote_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_filename_quote_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_attempted_completion_over in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_library_version in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_editing_mode in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_line_buffer in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_point in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_event_hook in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_catch_sigwinch in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_catch_signals in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_cleanup_after_signal() in stdio.h,readline/readline.h,readline/history.h... no checking for rl_clear_signals() in stdio.h,readline/readline.h,readline/history.h... no checking for rl_set_screen_size() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_get_screen_size() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_vi_editing_mode() in stdio.h,readline/readline.h,readline/history.h... no checking for rl_emacs_editing_mode() in stdio.h,readline/readline.h,readline/history.h... no checking for replace_history_entry() in stdio.h,readline/readline.h,readline/history.h... no checking for remove_history() in stdio.h,readline/readline.h,readline/history.h... yes checking for clear_history() in stdio.h,readline/readline.h,readline/history.h... yes checking for RL_PROMPT_START_IGNORE in stdio.h,readline/readline.h,readline/history.h... yes checking for RL_PROMPT_END_IGNORE in stdio.h,readline/readline.h,readline/history.h... yes creating Makefile
In any case, there are too many missing functions, but ... do more
$ rvm pkg uninstall readline ... β°ββ 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... yes checking for rl_getc_function() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_filename_completion_function() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_username_completion_function() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_completion_matches() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_refresh_line() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_deprep_term_function in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_completion_append_character in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_basic_word_break_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_completer_word_break_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_basic_quote_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_completer_quote_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_filename_quote_characters in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_attempted_completion_over in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_library_version in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_editing_mode in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_line_buffer in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_point in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_event_hook in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_catch_sigwinch in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_catch_signals in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_cleanup_after_signal() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_clear_signals() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_set_screen_size() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_get_screen_size() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_vi_editing_mode() in stdio.h,readline/readline.h,readline/history.h... yes checking for rl_emacs_editing_mode() in stdio.h,readline/readline.h,readline/history.h... yes checking for replace_history_entry() in stdio.h,readline/readline.h,readline/history.h... yes checking for remove_history() in stdio.h,readline/readline.h,readline/history.h... yes checking for clear_history() in stdio.h,readline/readline.h,readline/history.h... yes checking for RL_PROMPT_START_IGNORE in stdio.h,readline/readline.h,readline/history.h... yes checking for RL_PROMPT_END_IGNORE in stdio.h,readline/readline.h,readline/history.h... yes creating Makefile $ make compiling readline.c linking shared-object readline.so $ make install /usr/bin/install -c -m 0755 readline.so /home/sky/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/x86_64-linux installing default readline libraries irb 1.9.3-p194 :001 >
, .
1 - libedit-dev
# dpkg --get-selections| egrep '(readline|libedit)' libedit-dev install
2 - pkg readline
$ rvm pkg uninstall readline
3 - $rvm_path/src/ruby ββ- # {version}/ext/readline
$ ruby extconf.rb; make; make install
4 -