やすしです。

From: Hiroshi IGARASHI <igarashi / ueda.info.waseda.ac.jp>
Subject: [ruby-ext:00763] Re: Gdk::Pixmap -> Gdk::GL::Pixmap
Date: Mon, 20 Dec 1999 09:03:13 +0900

> と思ったのですが……Ruby/GTK側のC関数を参照するにはextern宣言だ
> けではだめで、gtkglareaライブラリを利用するRuby スクリプトで前もっ
> てrequire 'gtk'をやっておかないと、
> 
> iga@runal> ruby -I src -r gtkglarea -e 'p Gdk::Pixmap.instance_methods'
> ruby: can't resolve symbol 'get_gdkdraw'
> : Unable to resolve symbol - src/gtkglarea.so (LoadError)
> 
> などと言われてしまいます。Init_gtkglarea()でrequireするのでは遅
> 過ぎるためです。他にいい方法はないのでしょうか?

良い方法ではないのですが、「gtkglareaを使うなら最初に gtkを requireしと
けよ」って言う態度で行こうかと‥‥(^^;

とりあえず動いているうちの gtkglareaでは

>    /* additional method for Gdk::Pixmap */
>    rb_define_method(gdkPixmap, "to_gl", gdkpmap_to_gl, 1);

として、gdkpmap_to_gl()を書いただけにしました。externもなんにもしてない
んですけど、compile時に errorも出ないし、ちゃんと動いてます(^^;;;;

なにか良い方法があったら、教えてください(__)
--
          yashi