From: Masao M. <mu...@hi...> - 2003-07-29 17:59:46
|
むとうです。 お恥ずかしい話なのですが、ご存じの方がいたら (いつものことかと笑って(^^;))教えてください。 実は、Ruby/GTK2ってそのままだとgdbでうまく デバッグできません(RedHat9)。 うまくできないというのは、例えば、 (gdb) run listview.rb Starting program: /usr/bin/ruby listview.rb [New Thread 1074295968 (LWP 25610)] って感じでダンマリになります。 で、どうもこれはスレッド周りのコードと相性が 悪いっぽくて(ロックしちゃってる?)、gtk/src/init.c の以下の行をコメント化するとうまくいくので いつも、そうしちゃってます。 #ifdef G_THREADS_ENABLED /* g_thread_init (NULL); gdk_threads_init(); */ #endif これ、gdbのオプションレベルで回避する方法とかって ないかなぁ、なんて思いました。 もし、無いようなら、Ruby/GTK側で特別なオプション つけちゃっても良いかなぁと思ってますが、 どなたかご存じないですか。 #ifdef G_THREADS_ENABLED if (argv[0]とかで判断){ g_thread_init (NULL); gdk_threads_init(); } #endif -- .:% Masao Mutoh<mu...@hi...> |