Rails readline安裝

readline

在Centos上使用rails c 時,報錯

[root@57-196 xxx]# rails c
/usr/local/lib/ruby/2.3.0/irb/completion.rb:10:in `require': cannot load such file -- readline (LoadError)
        from /usr/local/lib/ruby/2.3.0/irb/completion.rb:10:in `<top (required)>'
        from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/console.rb:3:in `require'
        from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/console.rb:3:in `<top (required)>'
        from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:138:in `require'
        from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:138:in `require_command!'
        from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:68:in `console'
        from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:49:in `run_command!'
        from /usr/local/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands.rb:18:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'

解決

  1. 安裝centos的支持環(huán)境,參見linux環(huán)境初始腳本
  2. 編譯ruby源碼的readline
cd /<path>/<ruby>/ext/readline
ruby extconf.rb

修改生成Makefile,添加 top_srcdir=../.. 內(nèi)容如下

...
top_srcdir = ../..
CC = gcc
CXX = g++
LIBRUBY = $(LIBRUBY_A)
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
LIBRUBYARG_SHARED = -Wl,-R$(libdir) -L$(libdir) 
LIBRUBYARG_STATIC = -Wl,-R$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)-static
empty =
OUTFLAG = -o $(empty)
COUTFLAG = -o $(empty)
...

安裝

make && make install
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容