Ruby/GTK+の導入


Rubyって・・・
Rubyのインストール
Ruby-GTKのインストール



・ Rubyって・・・
Rubyって知ってますか?
とりあえず、オブジェクト指向のすばらしい実装です。
PerlやC++のオブジェクト指向「っぽい」のとはわけがちがいます。

Pythonと少し似通ったところがあるようですが、
私にはこちらのほうが文法的矛盾が少ないように感じるので、
こちらの方を優先して勉強してます。

そして、作者が日本人なので当然日本語処理はバッチリです。

私は初めてPerlのスクリプトを見たときに、
意味不明の記号の羅列のように感じてしまってかなり抵抗があったんですね。
でもなにかの雑誌でRubyを見たときに、sourceが非常にすっきりしてるのに驚いたのです。
これなら自分でもできそうだな、と。

実際に触って見たら、予想以上の使いやすさを実感。
もう虜ですね。
スクリプト言語はRubyで決定って感じです。

まだまだ勉強不足でろくにスクリプトを書けませんけど、
一緒にRubyを勉強して行きましょう!

ということで、次はインストールです。



・  Rubyのインストール

基本的にCygwinがインストールされているという前提で説明を行います。

RubyのWindows用パッケージは、
・ Cygwin
・ Mingw
・ MSwin32

と分けられます。

このうち、CygwinとMingwの二つがCygwin環境で使うのに適しています。
どちらにしても、Rubyのホームページ(http://www.ruby-lang.org/ja/)  (←リンクして良いかわからんので)
から、
ruby-1.6.7-i386-cygwin.tar.gz
もしくは
ruby-1.6.7-i386-mingw32.tar.gz
をダウンロードしてきて、 ルートディレクトリ( "/" )で解凍するだけなんです。

#cd /
#tar xvzf ruby-1.6.7-i386-cygwin.tar.gz


でおしまい。
#ruby --version
でバージョン情報が出てくれば、インストールはうまくいっています。
簡単簡単。




・ ruby-gtkのインストール
まずインストールの際に、GTK+の開発環境がインストールされていることが前提です。
最新のruby-gtkパッケージは、Ruby-Gnomeホームページ からダウンロードできます。
ここから手に入るのはSouce Fileのみですので、自分でコンパイルすることが必要になります。
※その際、RubyはRuby-cygwinを使ってください。Ruby-ming32では動きません!

その時点での最新パッケージ、2002/9/19時点では
ruby-gtk-0.30.tar.gz
をダウンロードします。

これをどこか適当な場所に置いて、解凍します。
#tar xvzf ruby-gtk-0.30.tar.gz
あとはコンパイルするだけですが、実は結構これが面倒くさい。
コンパイルするときにgtk-configが必要になります。
しかしgtk-configが入っているならまったく問題ないのですが、
私のページに書いてある方法でインストールしたGTK+の場合、gtk-configが入っていません。
ではどうするのか。

・・・そこは抜け道がありまして、解凍したディレクトリに、
gtk-config.cygwin ファイルがあります。
このファイルを自分の環境に合わせて適宜修正してやる必要があります。

私の環境に合わせて修正したものが以下のものです。

_/_/_/_/_/_/_/_/_/_/_/_/_/_/ gtk-config.cygwin _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#!/usr/local/bin/ruby

gtk_src = '/usr/local'

for arg in ARGV
  case arg
  when '--version'
    print "1.3\n"
  when '--libs'
    print "-L#{gtk_src}/lib -lgtk -lgdk -lglib-2.0 -lgmodule-2.0 -lintl -liconv\n"
  when '--cflags'
    print "-I#{gtk_src}/include/ -I#{gtk_src}/lib/gtk+/include -I#{gtk_src}/include/glib-2.0 -I#{gtk_src}/lib/glib-2.0/include" 
  end
end
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/


これをgtk-configとして認識させてやればいいのです。

さて、とりあえずREADMEファイルを見ると
#ruby extconf.rb
を実行しなさいとあります。
実際はここで、自動的にgtk-configが呼ばれることになります。
ということで、extconf.rbを変更します。

config_cmd = with_config("gtk-config", "gtk-config")

の部分を、

config_cmd = with_config("gtk-config", "./gtk-config.cygwin")

のように変更します。
これでうまくいくはずです。

2003/6/2 追記:
最近のCygwinではRubyがインストールできます。
その際は、gtk-config.cygwinファイルの先頭を
#!/usr/local/bin/ruby
から、
#!/usr/bin/ruby
に変更してください。

あとはREADMEの通り
#ruby extconf.rb
#make
#make install

でインストールが終了します。

2003/6/2 追記: 現在のCygwinのコンパイラはgcc-3.x系なので、おそらくruby-gtkのコンパイルは失敗します。
新たにgcc-2をインストールしてください。
上記の #ruby extconf.rb まで実行したら、make する前にMakefileの以下を書き換えてください。
CC=gcc -> CC=gcc-2
これでうまくコンパイルが通るはずです。

試しに簡単なプログラムを実行しましょう。
_/_/_/_/_/_/_/_/_/_/_/ gtkruby.rb _/_/_/_/_/_/_/_/_/_/_/_/_/_/
#!/usr/local/bin/ruby
require 'gtk'

window = Gtk::Window.new()
window.signal_connect("destroy") do |*args|
  exit
end

label = Gtk.::Label.new("Hello World!")
window.add(label)
window.show_all

Gtk.main
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/


これを次のように実行します。

#ruby gtkruby.rb

次のような画面が現れます。

test.jpg

ウィンドウは現れましたか?
結構簡単に作れちゃうんです。
これならプログラミングが苦手な人でもちょちょいっといけるでしょ?



戻る
Top Pageへ