Hatena::Grouprubyist

ayucat.chのRuby/Rails日記 (新) このページをアンテナに追加 RSSフィード

ayucatのRuby/Rails日記 ( rubyist.g.hatena.ne.jp/ayucat_on_t@be10g/ )からこちらに移行中

2008年分(冬)まで移行済み

ブログ本家はこちら

2009-10-06

Ruby 1.9.1 (p129) で Ruby/Tk が使えない

|  Ruby 1.9.1 (p129) で Ruby/Tk が使えない - ayucat.chのRuby/Rails日記 (新) を含むブックマーク はてなブックマーク -  Ruby 1.9.1 (p129) で Ruby/Tk が使えない - ayucat.chのRuby/Rails日記 (新)

require 'tk'すると、このウィンドウを表示して、無限ループに突入する。

f:id:ayucat_on_tabelog:20091007012940p:image

再現方法:

>ruby -rtk

とかで。

One-Click Installer Ruby 1.8.6-rc27での結果

>ruby -v -rtk -e 'p Tk::TCL_VERSION, Tk::TK_VERSION, Tk::JAPANIZ
ED_TK'
ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-mswin32]
C:/Ruby/lib/ruby/1.8/tk.rb:1102: warning: Inconsistency.`tcltklib' is enabled nativethread-support. But loaded Tcl/Tk libraries are not. (Probably, the inconsistency doesn't cause any troubles.)
"8.4"
"8.4"
false

Ruby 1.9.1p129 mswin32版での結果

>\ruby19\bin\ruby -v -rtk -e 'p Tk::TCL_VERSION, Tk::TK_VERSION,
 Tk::JAPANIZED_TK'
ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-mswin32]
C:/ruby19/lib/ruby/1.9.1/tk.rb:3282: warning: shadowing outer local variable - key
C:/ruby19/lib/ruby/1.9.1/tk.rb:3410: warning: shadowing outer local variable - key
C:/ruby19/lib/ruby/1.9.1/tk.rb:3470: warning: shadowing outer local variable - key
C:/ruby19/lib/ruby/1.9.1/tk.rb:3710: warning: mismatched indentations at 'end' with 'if' at 3708
C:/ruby19/lib/ruby/1.9.1/tk.rb:4299: warning: shadowing outer local variable - method
C:/ruby19/lib/ruby/1.9.1/tk.rb:4338: warning: shadowing outer local variable - v
C:/ruby19/lib/ruby/1.9.1/tk.rb:4685: warning: shadowing outer local variable - method
C:/ruby19/lib/ruby/1.9.1/tk.rb:4724: warning: shadowing outer local variable - conf
C:/ruby19/lib/ruby/1.9.1/tk.rb:4734: warning: shadowing outer local variable - conf
C:/ruby19/lib/ruby/1.9.1/tk.rb:29: warning: Inconsistency.`tcltklib' is enabled nativethread-support. But loaded Tcl/Tk libraries are not. (Probably, the inconsistency doesn't cause any troubles.)
C:/ruby19/lib/ruby/1.9.1/tk.rb:1233: warning: method redefined; discarding old to_s

ここで固まってしまう。止めると

C:/ruby19/lib/ruby/1.9.1/tk.rb:1340:in `_invoke': Interrupt
        from C:/ruby19/lib/ruby/1.9.1/tk.rb:1340:in `<module:TkCore>'
        from C:/ruby19/lib/ruby/1.9.1/tk.rb:1108:in `<top (required)>'
        from \ruby19\bin\ruby:0:in `require'

って。

まとめ

いちいちやっとれんので、諦める。Ruby/Tkさんさようなら。

、、、というわけにはいかず、Ruby/Tk依存の遺産があるから。

(探究編) Ruby 1.9.1 (p129) で Ruby/Tk が使えない

|  (探究編) Ruby 1.9.1 (p129) で Ruby/Tk が使えない - ayucat.chのRuby/Rails日記 (新) を含むブックマーク はてなブックマーク -  (探究編) Ruby 1.9.1 (p129) で Ruby/Tk が使えない - ayucat.chのRuby/Rails日記 (新)

g:rubyist:id:ayucatch:20091006:does_not_work_ruby_tk_on_ruby_1_9_1_mswin32

require 'tk'すると、このウィンドウを表示して、無限ループに突入する。

Ruby 1.9.1 (p129) で Ruby/Tk が使えない - ayucat.chのRuby/Rails日記 (新) - Rubyist

ということなので、Tk関連を調べてみた。tk84.dllが見つかった。

Tk/Tcl単体 8.4.2.19
Python (2.5?) と一緒に 8.4.2.12

これが原因か?と思ったけど、関係なかったっぽい。

(解決編) Ruby 1.9.1 (p129) で Ruby/Tk が使えない

|  (解決編) Ruby 1.9.1 (p129) で Ruby/Tk が使えない - ayucat.chのRuby/Rails日記 (新) を含むブックマーク はてなブックマーク -  (解決編) Ruby 1.9.1 (p129) で Ruby/Tk が使えない - ayucat.chのRuby/Rails日記 (新)

普通のスクリプトだと頭に

module TkCore; RUN_EVENTLOOP_ON_MAIN_THREAD = true; end

を持ってくると動きます。

[ruby-list:45712] Re: ruby-1.9.1-preview2のruby-tk on OSX

らしい。

module TkCore; RUN_EVENTLOOP_ON_MAIN_THREAD = true; end

FA

経緯

結果

\ruby19\bin\ruby -v -e 'module TkCore; RUN_EVENTLOOP_
ON_MAIN_THREAD = true; end; require "tk"; p Tk::TCL_VERSION, Tk::TK_VERSION, Tk:
:JAPANIZED_TK'
ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-mswin32]
C:/ruby19/lib/ruby/1.9.1/tk.rb:3282: warning: shadowing outer local variable - key
C:/ruby19/lib/ruby/1.9.1/tk.rb:3410: warning: shadowing outer local variable - key
C:/ruby19/lib/ruby/1.9.1/tk.rb:3470: warning: shadowing outer local variable - key
C:/ruby19/lib/ruby/1.9.1/tk.rb:3710: warning: mismatched indentations at 'end' with 'if' at 3708
C:/ruby19/lib/ruby/1.9.1/tk.rb:4299: warning: shadowing outer local variable - method
C:/ruby19/lib/ruby/1.9.1/tk.rb:4338: warning: shadowing outer local variable - v
C:/ruby19/lib/ruby/1.9.1/tk.rb:4685: warning: shadowing outer local variable - method
C:/ruby19/lib/ruby/1.9.1/tk.rb:4724: warning: shadowing outer local variable - conf
C:/ruby19/lib/ruby/1.9.1/tk.rb:4734: warning: shadowing outer local variable - conf
C:/ruby19/lib/ruby/1.9.1/tk.rb:29: warning: Inconsistency.`tcltklib' is enabled nativethread-support. But loaded Tcl/Tk libraries are not. (Probably, the inconsistency doesn't cause any troubles.)
C:/ruby19/lib/ruby/1.9.1/tk.rb:1233: warning: method redefined; discarding old to_s
C:/ruby19/lib/ruby/1.9.1/tk.rb:843: warning: instance variable @cmdtbl not initialized
C:/ruby19/lib/ruby/1.9.1/tk.rb:2437: warning: instance variable encoding_table not initialized
"8.4"
"8.4"
false
C:/ruby19/lib/ruby/1.9.1/tk.rb:2759: warning: instance variable @encoding not initialized
C:/ruby19/lib/ruby/1.9.1/tk.rb:2759: warning: instance variable @encoding not initialized
C:/ruby19/lib/ruby/1.9.1/tk.rb:2759: warning: instance variable @encoding not initialized

とな。

KaylinKaylin2012/05/23 07:08Enlightening the world, one helpufl article at a time.

npjjphwqzbnpjjphwqzb2012/05/23 15:26fGhPPp <a href="http://tcrerkxvsrcg.com/">tcrerkxvsrcg</a>

uegvvqofuegvvqof2012/05/23 19:43YAfmQb , [url=http://wydtcpvtxrme.com/]wydtcpvtxrme[/url], [link=http://ohmwedgrtsau.com/]ohmwedgrtsau[/link], http://myegmbveynyp.com/

lgazxhplgazxhp2012/05/25 22:20sBpdlD <a href="http://ohetxsnvmgul.com/">ohetxsnvmgul</a>

bfyrxigortbfyrxigort2012/05/26 20:39t4GUmS , [url=http://vukxubpxbfeu.com/]vukxubpxbfeu[/url], [link=http://fagmsrrtiplj.com/]fagmsrrtiplj[/link], http://ciphaktkftuq.com/

2008-10-11

Rubyはよく落ちる

|  Rubyはよく落ちる - ayucat.chのRuby/Rails日記 (新) を含むブックマーク はてなブックマーク -  Rubyはよく落ちる - ayucat.chのRuby/Rails日記 (新)

Rubyが抱える課題、NaClの前田氏が講演 − @ITから。

「10年前のRubyは、たとえ落ちても誰もあまり気にしなかった。今のRubyは落とそうと思っても難しいというほどなのに、それでも安定していないと言われている」(同氏)

Rubyが抱える課題、NaClの前田氏が講演 − @IT

私の場合:

10年前のRubyは、たとえ落ちても誰もあまり気にしなかった

10年前のRubyはほとんど信用していなくて、落ちるほど使用していなかった。

今のRubyは落とそうと思っても難しいというほどなのに、それでも安定していないと言われている

今のRubyは少し真面目に使い始めただけなのに、productionレベルでは使えないほどによく落ちる。personalユースなので、辛うじて使えている。実はpersonalだけどproductionユースでもあるので、ホントはとても困っているんだけど、個人的にストレスを受け止めてやることで、Rubyの(個人的な)試用を行なっているところである。

結論

Railsに代表されるようなWebアプリだったら、気にすることはない。

少なくともayucatが動かしているWindowsWindows APIを叩くと山ほど落ちた例がある。

と言うと、Ruby擁護派のれんちゅーはWindowsは対象外とかワケの分かんないこと言い出してくるだろう。が、その他の言語はWindowsでも普通に動いてるからさっ--#

とはいえ、簡単なインストーラ for Windowsがいくつかまとまってきたので、10年前に比べるとインストールは楽になっていると思う。

MalerieMalerie2011/05/04 09:40This forum needed sahnkig up and you’ve just done that. Great post!

wdznbcleokwdznbcleok2011/05/05 11:02iA17Qm <a href="http://mnkwgpgnaqyi.com/">mnkwgpgnaqyi</a>

wavmtmwavmtm2011/05/06 11:339tXIJX , [url=http://wenrsptkbzfd.com/]wenrsptkbzfd[/url], [link=http://qsarfsoykpsc.com/]qsarfsoykpsc[/link], http://mtgpbimkkaza.com/

bslopubslopu2011/05/07 12:38DAgAGm <a href="http://umphdatbrngd.com/">umphdatbrngd</a>