[#41531] [Bug #3385] ext/dbm: accept various version of db — Takahiro Kambe <redmine@...>

Bug #3385: ext/dbm: accept various version of db

10 messages 2010/06/03

[#41600] 質問・提案:cgi.rbの後継となるライブラリについて — Dice <tetradice@...>

Diceです。cgi.rbの後継ライブラリについて質問させてください。

16 messages 2010/06/13
[#41606] Re: 質問・提案:cgi.rbの後継となるライブラリについて — Fujioka <fuj@...> 2010/06/14

藤岡です。

[#41607] Re: 質問・提案:cgi.rbの後継となるライブラリについて — KAKUTANI Shintaro <shintaro.kakutani@...> 2010/06/14

かくたにです。

[#41616] Re: 質問・提案:cgi.rbの後継となるライブラリについて — Dice <tetradice@...> 2010/06/15

藤岡さん、かくたにさん、返信ありがとうございます。

[#41617] Re: 質問・提案:cgi.rbの後継となるライブラリについて — Fujioka <fuj@...> 2010/06/16

藤岡です。

[#41656] Re: 質問・提案:cgi.rbの後継となるライブラリについて — Dice <tetradice@...> 2010/06/20

Diceです。藤岡さん、返信ありがとうございます。

[#41623] [Feature:trunk] argument delegation — Nobuyoshi Nakada <nobu@...>

なかだです。

23 messages 2010/06/16
[#41625] Re: [Feature:trunk] argument delegation — Yusuke ENDOH <mame@...> 2010/06/16

遠藤です。

[#41627] Re: [Feature:trunk] argument delegation — Yukihiro Matsumoto <matz@...> 2010/06/16

まつもと ゆきひろです

[#41702] WIN32OLE_METHOD offset_vtbl — kuwamoto shintaro <beuniv@...>

こんばんわ

16 messages 2010/06/23
[#41712] Re: WIN32OLE_METHOD offset_vtbl — Masaki Suketa <masaki.suketa@...> 2010/06/24

助田です。

[ruby-dev:41749] Re: (ruby/tk) ruby_1_9_2 への backport

From: Hidetoshi NAGAI <nagai@...>
Date: 2010-06-27 18:21:59 UTC
List: ruby-dev #41749
Yugui さん,

永井@知能.九工大です.
お手数をお掛けしてしまっています.

From: Yugui <yugui@yugui.jp>
Subject: [ruby-dev:41742] Re: (ruby/tk) ruby_1_9_2 への backport
Date: Sun, 27 Jun 2010 23:32:18 +0900
Message-ID: <AANLkTikAOr466VBOtNiUGiXrCTqPqmlPv0DbKsduBOn5@mail.gmail.com>
> この修正はマージするか迷ったんですが、下のような副作用がどこまで出る
> か分からなかったのでマージを後回しにして忘れておりました。
> 結構大きな変更でもありますし、時期的にできるだけマージしたくないんで
> すが、windowsでの[ruby-core:30358]の回避策というのはないんでしょうか。

[ruby-core:30397] に "Just with 8.5 built from source with msys/mingw."
などとあるように,速度の早いマルチコアの Windows 環境で発生してしまう
問題であると考えています.
テスト目的で一時的に Tcl/Tk インタープリタを生成して確認を行った後に
その確認用インタープリタを delete していたのですが,
マルチスレッド絡みで delete 前にイベントが到着し,
イベント処理されないままに delete を完了しているのだろうと思います.

同じようなことは今後増すことはあっても減ることはないでしょうから,
その根本的な解決として,確認用インタープリタの生成を止めるようにしました.
代りに,MacOS X では適切なマクロ定義がなされていることが必須となったため,
その情報を得るための tclConfig.sh/tkConfig.sh も必要となりました.

> reasonableな回避策がなければ、バグでもありますしマージに賛成したいと思います。

[ruby-core:30372] で試してもらった回避策は本当に非常手段で,
これを実行すると Thread.new{Tk.mainloop} というように
イベントループを main thread 以外で実行していた従来のスクリプトは
全滅することになります.
確認用インタープリタの生成を行わずに済ませるように修正する以外には
適切な方法はないと考えています.

以前に cygwin 版でうまく動かないという報告があった件も
実は同じ原因だったのかもしれないとも思っています.
残念ながら今の時点では確認できないため,
cygwin 向けには変更を見送っています.
ただし,cygwin の場合でも
----------------------------------------------------------
module TkCore; RUN_EVENTLOOP_ON_MAIN_THREAD = false; end
----------------------------------------------------------
を実行してから require 'tk' を行うという逆回避は有効なはずです.

> > (2) MacOS X 上での tcltklib.c を適切に compile するために,
> >    tclConfig.sh と tkConfig.sh が事実上必須となる.
> >
> >     → これらは Tcl/Tk の導入時に通常インストールされているはずのもので,
> >        compile 時に与えるべきフラグの情報が記載されている.
> 
> インストールされているはずってことは、
> >       修正後は,tclConfig.sh/tkConfig.sh がない場合に
> >      特に Aqua 版で正しく compile できなくなる可能性
> 
> というのはどういうケースで発生し得るでしょうか。念のため、その辺を伺えれば有り難いです。

Tcl/Tk のインストールは適切になされているという前提であるなら,
例えば,インストールした場所とは別のディレクトリから
インストール済みの Tcl/Tk のライブラリへのリンクを張り,
同じ場所にインストールされているはずの tclConfig.sh/tkConfig.sh へは
リンクが張られていないというようなケースでしょうか.
そのような場合にリンク元を Tcl/Tk ライブラリの場所として指定されると
tclConfig.sh/tkConfig.sh が見付からないことになります.

まぁ,tclConfig.sh/tkConfig.sh が全く存在していないという場合以外は
configure オプションで指定してやればいいだけです.
特殊なインストール状況を作り出せている人なら,
きっと configure オプションの指定程度のことは問題にしないでしょうね.
-- 
永井 秀利  (nagai@ai.kyutech.ac.jp)
九州工業大学 大学院情報工学研究院 知能情報工学研究系 知能情報メディア部門

In This Thread