From: Masao M. <mu...@hi...> - 2005-10-05 15:40:46
Attachments:
depend
extconf.rb.patch
|
須藤さん むとうです。 Ruby/CairoのWin32向けextconf.rbパッチを送ります。 あと、dependファイルもつけましたのでextconf.rbと 同じディレクトリに置いてください。make installで rb_cairo.hが適切な場所にインストールされるようになります。 で、須藤さんの修正とこのパッチで、無事、Ruby/GTK とのリンクもうまくいきました。 Cygwin・MSVC+で試しました。案外あっさり。 #mingwは試してませんが...。 ポイントとしては、 生成されるcairo.libというファイル名がc:\gtk\lib\cairo.lib(cairo本体のlib) とバッティングしてしまうことから、Ruby/GTK側でうまく rcairoのシンボルを見つけられない(c:\gtk\lib\cairo.libの方を 見てしまう)という問題に対応するために、生成される.lib ファイル名をlibruby-cairo.libという名前になるようにしてい ます(cygwin, mingwの場合はlibruby-cygwin.a)。 この問題は、本来、Ruby-GNOME2でも存在するのですが GTK+なライブラリたちはglib-2.0.libのようにバージョン 付になっている(一方、Ruby-GNOME2側はglib2.lib)ため、 偶然バッティングが起きずに問題となっていませんでした。 なので、Ruby-GNOME2側でも同様の対処とするように mkmf-gnome2.rb側も修正を入れています。 それから、ちょっと以下の行だけ、失念してました。 $defs << "-DRUBY_CAIRO_PLATFORM_WIN32" このパッチでそのまま動くと思いますが、また明日にでも確認してみます。 あと、setup.rbのほうですが、結果は以下のような感じです。 こちらは追えていません。 C:\test\dev\rcairo>ruby setup.rb config Processing the package `cairo' ... ---> lib <--- lib ---> ext c:/ruby/bin/ruby C:/test/dev/rcairo/packages/cairo/ext/extconf.rb setup.rb:656:in `command': system("c:\\ruby\\bin\\ruby" "C:/test/dev/rcairo/ packages/cairo/ext/extconf.rb") failed (RuntimeError) from setup.rb:661:in `ruby' from setup.rb:1237:in `extconf' from setup.rb:1233:in `config_dir_ext' from setup.rb:1498:in `__send__' from setup.rb:1498:in `traverse' from setup.rb:1496:in `dive_into' from setup.rb:1496:in `traverse' from setup.rb:1490:in `exec_task_traverse' ... 8 levels... from setup.rb:827:in `__send__' from setup.rb:827:in `invoke' from setup.rb:774:in `invoke' from setup.rb:1544 -- .:% Masao Mutoh<mu...@hi...> |
From: Kouhei S. <ko...@co...> - 2005-10-05 15:55:28
|
須藤です. In <200...@hi...> "[ruby-gnome2-devel-ja] rcairoパッチ" on Thu, 6 Oct 2005 00:40:30 +0900, Masao Mutoh <mu...@hi...> wrote: > Ruby/CairoのWin32向けextconf.rbパッチを送ります。 ありがとうございます. > あと、dependファイルもつけましたのでextconf.rbと > 同じディレクトリに置いてください。make installで > rb_cairo.hが適切な場所にインストールされるようになります。 一応,setup.rbがうまく動いたらpost-install.rbでインストール されるようになっているんですよね. でも,depend使った方がよいのかしら...うーん... > で、須藤さんの修正とこのパッチで、無事、Ruby/GTK > とのリンクもうまくいきました。 > Cygwin・MSVC+で試しました。案外あっさり。 それはよかったです. > ポイントとしては、 > 生成されるcairo.libというファイル名がc:\gtk\lib\cairo.lib(cairo本体のlib) > とバッティングしてしまうことから、Ruby/GTK側でうまく > rcairoのシンボルを見つけられない(c:\gtk\lib\cairo.libの方を > 見てしまう)という問題に対応するために、生成される.lib > ファイル名をlibruby-cairo.libという名前になるようにしてい > ます(cygwin, mingwの場合はlibruby-cygwin.a)。 なるほど. > それから、ちょっと以下の行だけ、失念してました。 > $defs << "-DRUBY_CAIRO_PLATFORM_WIN32" > このパッチでそのまま動くと思いますが、また明日にでも確認してみます。 お手数お掛けします. > あと、setup.rbのほうですが、結果は以下のような感じです。 > こちらは追えていません。 > > C:\test\dev\rcairo>ruby setup.rb config > Processing the package `cairo' ... > ---> lib > <--- lib > ---> ext > c:/ruby/bin/ruby C:/test/dev/rcairo/packages/cairo/ext/extconf.rb > setup.rb:656:in `command': system("c:\\ruby\\bin\\ruby" "C:/test/dev/rcairo/ > packages/cairo/ext/extconf.rb") failed (RuntimeError) これを見る感じだと PKGConfig.have_package(pkg, major, minor, micro) or exit 1 の PKGConfig.have_package(pkg, major, minor, micro) が失敗している感じですね. うーん,なんでだろう. |
From: Masao M. <mu...@hi...> - 2005-10-06 17:09:21
|
むとうです。 rcairoの件ですが、rcairo側はもう問題ないと思います。 Ruby/GTKも問題なかったです。あとはRuby/Pangoの確認ですね。 あ、あとsetup.rbもかな。 #なかなか時間がとれないのがたまにきず。 On Thu, 6 Oct 2005 01:18:28 +0900 Masao Mutoh <mu...@hi...> wrote: > むとうです。 > > On Thu, 06 Oct 2005 00:55:20 +0900 (JST) > Kouhei Sutou <ko...@co...> wrote: > > > 須藤です. > > > > In <200...@hi...> > > "[ruby-gnome2-devel-ja] rcairoパッチ" on Thu, 6 Oct 2005 00:40:30 +0900, > > Masao Mutoh <mu...@hi...> wrote: > > > > > Ruby/CairoのWin32向けextconf.rbパッチを送ります。 > > > > ありがとうございます. > > > > > あと、dependファイルもつけましたのでextconf.rbと > > > 同じディレクトリに置いてください。make installで > > > rb_cairo.hが適切な場所にインストールされるようになります。 > > > > 一応,setup.rbがうまく動いたらpost-install.rbでインストール > > されるようになっているんですよね. > > でも,depend使った方がよいのかしら...うーん... > > あ、そうそう。post-intall.rbの件は知ってましたが、本来、 > ここのディレクトリはそれが単体でもインストールできるようになっていると > うれしいので、depend使って頂けると助かります。 > > > > それから、ちょっと以下の行だけ、失念してました。 > > > $defs << "-DRUBY_CAIRO_PLATFORM_WIN32" > > > このパッチでそのまま動くと思いますが、また明日にでも確認してみます。 > > > > お手数お掛けします. > > > > > あと、setup.rbのほうですが、結果は以下のような感じです。 > > > こちらは追えていません。 > > > > > > C:\test\dev\rcairo>ruby setup.rb config > > > Processing the package `cairo' ... > > > ---> lib > > > <--- lib > > > ---> ext > > > c:/ruby/bin/ruby C:/test/dev/rcairo/packages/cairo/ext/extconf.rb > > > setup.rb:656:in `command': system("c:\\ruby\\bin\\ruby" "C:/test/dev/rcairo/ > > > packages/cairo/ext/extconf.rb") failed (RuntimeError) > > > > これを見る感じだと > > > > PKGConfig.have_package(pkg, major, minor, micro) or exit 1 > > > > の > > > > PKGConfig.have_package(pkg, major, minor, micro) > > > > が失敗している感じですね. > > うーん,なんでだろう. > > なるほど...。またちょっと時間があったら$defsの件と一緒に見てみたいと思います。 > > -- > .:% Masao Mutoh<mu...@hi...> > > > ------------------------------------------------------- > This SF.Net email is sponsored by: > Power Architecture Resource Center: Free content, downloads, discussions, > and more. http://solutions.newsforge.com/ibmarch.tmpl > _______________________________________________ > ruby-gnome2-devel-ja mailing list > rub...@li... > https://lists.sourceforge.net/lists/listinfo/ruby-gnome2-devel-ja > -- -- .:% Masao Mutoh<mu...@hi...> |
From: Masao M. <mu...@hi...> - 2005-10-07 17:38:15
Attachments:
rcairo.setup.rb.patch
|
むとうです。 On Fri, 07 Oct 2005 11:29:57 +0900 (JST) Kouhei Sutou <ko...@co...> wrote: > 須藤です. > > rcairoの件ですが、rcairo側はもう問題ないと思います。 > > ありがとうございました! 最後にsetup.rbのパッチを送ります。 一応はこれで cygwin/mswin32, fedora core4 で動作します。 > > Ruby/GTKも問題なかったです。あとはRuby/Pangoの確認ですね。 > > #なかなか時間がとれないのがたまにきず。 > > どうせ,rcairo側の実装が追い付かないと追い付かないと全機能は > テストできないですから大丈夫(?)です... X-| Ruby/Pangoの方がシンボル無いよ、とエラーが出ました。 rbpangocontext.c: In function ‘rcontext_set_font_options’: rbpangocontext.c:207: 警告: implicit declaration of function ‘RVAL2CRFONTOPTIONS’ rbpangocontext.c:207: 警告: passing argument 2 of ‘pango_cairo_context_set_font_options’ makes pointer from integer without a cast rbpangocontext.c: In function ‘rcontext_get_font_options’: rbpangocontext.c:217: 警告: implicit declaration of function ‘CRFONTOPTIONS2RVAL’ LinuxではWarningですみますが、Win32ではリンク時にエラーになるので 対処が必要です。 対応としては、#ifdef RVAL2CRFONTOPTIONSをRuby/Pango側でやるか、 rcairo側で上記マクロをフェイクでも構わないので用意するか、のどちらかだと 思いますが、どうされますか? > > あ、そうそう。post-intall.rbの件は知ってましたが、本来、 > > > ここのディレクトリはそれが単体でもインストールできるようになっていると > > > うれしいので、depend使って頂けると助かります。 > > そういうことでしたか. > 了解しました.dependを使うようにしました. > > と,思ったのですが,setup.rbはinstall時にmake installを使わ > ないんですね.なので,dependは使わないでpost-install.rbを使 > うことにします. なるほど、了解です。 -- .:% Masao Mutoh<mu...@hi...> |
From: Masao M. <mu...@hi...> - 2005-10-08 15:29:18
|
むとうです。 On Sat, 08 Oct 2005 12:14:11 +0900 (JST) Kouhei Sutou <ko...@co...> wrote: > 須藤です. > > Ruby/Pangoの方がシンボル無いよ、とエラーが出ました。 > > > > rbpangocontext.c: In function ‘rcontext_set_font_options’: > > rbpangocontext.c:207: 警告: implicit declaration of function ‘RVAL2CRFONTOPTIONS’ > > rbpangocontext.c:207: 警告: passing argument 2 of ‘pango_cairo_context_set_font_options’ makes pointer from integer without a cast > > rbpangocontext.c: In function ‘rcontext_get_font_options’: > > rbpangocontext.c:217: 警告: implicit declaration of function ‘CRFONTOPTIONS2RVAL’ > > > > LinuxではWarningですみますが、Win32ではリンク時にエラーになるので > > 対処が必要です。 > > > > 対応としては、#ifdef RVAL2CRFONTOPTIONSをRuby/Pango側でやるか、 > > rcairo側で上記マクロをフェイクでも構わないので用意するか、のどちらかだと > > 思いますが、どうされますか? > > 昨夜cairo_font_options_tを実装したので,rcairoをアップデート > すると直ると思います. 無事動作することを確認しました。 ただ、今度はRuby/Pango側で以下のWarningが出ました。 rb_cairo_surface.c: In function ‘cr_surface_write_to_png’: rb_cairo_surface.c:193: 警告: implicit declaration of function ‘rb_need_block’ rb_need_blockは Ruby 1.8.2では定義されていないようです。 -- .:% Masao Mutoh<mu...@hi...> |
From: Masao M. <mu...@hi...> - 2005-10-08 15:36:48
|
むとうです。 On Sun, 9 Oct 2005 00:29:06 +0900 Masao Mutoh <mu...@hi...> wrote: > > 昨夜cairo_font_options_tを実装したので,rcairoをアップデート > > すると直ると思います. > > 無事動作することを確認しました。 > > ただ、今度はRuby/Pango側で以下のWarningが出ました。 > > rb_cairo_surface.c: In function ‘cr_surface_write_to_png’: > rb_cairo_surface.c:193: 警告: implicit declaration of function ‘rb_need_block’ > > rb_need_blockは Ruby 1.8.2では定義されていないようです。 ごめんなさい。上記はrcairo側の話です。 -- .:% Masao Mutoh<mu...@hi...> |
From: Kouhei S. <ko...@co...> - 2005-10-08 15:39:40
|
須藤です. In <200...@hi...> "Re: [ruby-gnome2-devel-ja] Re: [ruby-gnome2-devel-ja] rcairoパッチ" on Sun, 9 Oct 2005 00:29:06 +0900, Masao Mutoh <mu...@hi...> wrote: > > 昨夜cairo_font_options_tを実装したので,rcairoをアップデート > > すると直ると思います. > > 無事動作することを確認しました。 ありがとうございます. > rb_cairo_surface.c: In function ‘cr_surface_write_to_png’: > rb_cairo_surface.c:193: 警告: implicit declaration of function ‘rb_need_block’ > > rb_need_blockは Ruby 1.8.2では定義されていないようです。 そうだったんですか... rb_need_blockは使わないようにしました. |
From: Kouhei S. <ko...@co...> - 2005-10-08 03:14:22
|
須藤です. In <200...@hi...> "Re: [ruby-gnome2-devel-ja] Re: [ruby-gnome2-devel-ja] rcairoパッチ" on Sat, 8 Oct 2005 02:37:58 +0900, Masao Mutoh <mu...@hi...> wrote: > 最後にsetup.rbのパッチを送ります。 > 一応はこれで cygwin/mswin32, fedora core4 で動作します。 ありがとうございます. コミットしました. > > どうせ,rcairo側の実装が追い付かないと追い付かないと全機能は > > テストできないですから大丈夫(?)です... X-| > > Ruby/Pangoの方がシンボル無いよ、とエラーが出ました。 > > rbpangocontext.c: In function ‘rcontext_set_font_options’: > rbpangocontext.c:207: 警告: implicit declaration of function ‘RVAL2CRFONTOPTIONS’ > rbpangocontext.c:207: 警告: passing argument 2 of ‘pango_cairo_context_set_font_options’ makes pointer from integer without a cast > rbpangocontext.c: In function ‘rcontext_get_font_options’: > rbpangocontext.c:217: 警告: implicit declaration of function ‘CRFONTOPTIONS2RVAL’ > > LinuxではWarningですみますが、Win32ではリンク時にエラーになるので > 対処が必要です。 > > 対応としては、#ifdef RVAL2CRFONTOPTIONSをRuby/Pango側でやるか、 > rcairo側で上記マクロをフェイクでも構わないので用意するか、のどちらかだと > 思いますが、どうされますか? 昨夜cairo_font_options_tを実装したので,rcairoをアップデート すると直ると思います. |
From: Kouhei S. <ko...@co...> - 2005-10-07 02:30:10
|
須藤です. In <200...@hi...> "Re: [ruby-gnome2-devel-ja] Re: [ruby-gnome2-devel-ja] rcairoパッチ" on Fri, 7 Oct 2005 02:08:54 +0900, Masao Mutoh <mu...@hi...> wrote: > rcairoの件ですが、rcairo側はもう問題ないと思います。 ありがとうございました! > Ruby/GTKも問題なかったです。あとはRuby/Pangoの確認ですね。 > #なかなか時間がとれないのがたまにきず。 どうせ,rcairo側の実装が追い付かないと追い付かないと全機能は テストできないですから大丈夫(?)です... X-| > > あ、そうそう。post-intall.rbの件は知ってましたが、本来、 > > ここのディレクトリはそれが単体でもインストールできるようになっていると > > うれしいので、depend使って頂けると助かります。 そういうことでしたか. 了解しました.dependを使うようにしました. と,思ったのですが,setup.rbはinstall時にmake installを使わ ないんですね.なので,dependは使わないでpost-install.rbを使 うことにします. |
From: Masao M. <mu...@hi...> - 2005-10-05 16:18:42
|
むとうです。 On Thu, 06 Oct 2005 00:55:20 +0900 (JST) Kouhei Sutou <ko...@co...> wrote: > 須藤です. > > In <200...@hi...> > "[ruby-gnome2-devel-ja] rcairoパッチ" on Thu, 6 Oct 2005 00:40:30 +0900, > Masao Mutoh <mu...@hi...> wrote: > > > Ruby/CairoのWin32向けextconf.rbパッチを送ります。 > > ありがとうございます. > > > あと、dependファイルもつけましたのでextconf.rbと > > 同じディレクトリに置いてください。make installで > > rb_cairo.hが適切な場所にインストールされるようになります。 > > 一応,setup.rbがうまく動いたらpost-install.rbでインストール > されるようになっているんですよね. > でも,depend使った方がよいのかしら...うーん... あ、そうそう。post-intall.rbの件は知ってましたが、本来、 ここのディレクトリはそれが単体でもインストールできるようになっていると うれしいので、depend使って頂けると助かります。 > > それから、ちょっと以下の行だけ、失念してました。 > > $defs << "-DRUBY_CAIRO_PLATFORM_WIN32" > > このパッチでそのまま動くと思いますが、また明日にでも確認してみます。 > > お手数お掛けします. > > > あと、setup.rbのほうですが、結果は以下のような感じです。 > > こちらは追えていません。 > > > > C:\test\dev\rcairo>ruby setup.rb config > > Processing the package `cairo' ... > > ---> lib > > <--- lib > > ---> ext > > c:/ruby/bin/ruby C:/test/dev/rcairo/packages/cairo/ext/extconf.rb > > setup.rb:656:in `command': system("c:\\ruby\\bin\\ruby" "C:/test/dev/rcairo/ > > packages/cairo/ext/extconf.rb") failed (RuntimeError) > > これを見る感じだと > > PKGConfig.have_package(pkg, major, minor, micro) or exit 1 > > の > > PKGConfig.have_package(pkg, major, minor, micro) > > が失敗している感じですね. > うーん,なんでだろう. なるほど...。またちょっと時間があったら$defsの件と一緒に見てみたいと思います。 -- .:% Masao Mutoh<mu...@hi...> |