From: Masao M. <mut...@gm...> - 2006-05-25 14:22:33
|
むとうです。 #なんだか、私のプロバイダからだとメールが送れたり送れなかったり・・・。 On Thu, 25 May 2006 23:03:29 +0900 (JST) Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > 酒井です。 > > 以前はソースコードのディレクトリとは別のディレクトリでビルド出来たはず > ですが、久しぶりに試したらビルドに失敗しました。 > Makefileがビルド用のディレクトリではなくソースコードのディレクトリに作 > られてしまったりしています。 あれ? なんでしょう。その辺、全然いじった記憶がないんですけど・・・。 -- .:% Masao Mutoh<mu...@hi...> |
From: Masahiro S. ()
<sa...@to...> - 2006-05-25 16:19:33
|
酒井です。 From: "Masao Mutoh" <mut...@gm...> Date: Thu, 25 May 2006 23:22:08 +0900 > むとうです。 > #なんだか、私のプロバイダからだとメールが送れたり送れなかったり・・・。 > > On Thu, 25 May 2006 23:03:29 +0900 (JST) > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > 酒井です。 > > > > 以前はソースコードのディレクトリとは別のディレクトリでビルド出来たはず > > ですが、久しぶりに試したらビルドに失敗しました。 > > Makefileがビルド用のディレクトリではなくソースコードのディレクトリに作 > > られてしまったりしています。 > > あれ? > なんでしょう。その辺、全然いじった記憶がないんですけど・・・。 以前というのは2年くらい前の話です。 たしか当時はcreate_makefile_at_srcdirとかなかったと思いますし、 それからだいぶ変更されているはずです。 しかし、別ディレクトリでビルド出来なくなっていることに誰も気づかない ということは、みんなは別ディレクトリでビルドしたりはしないものなので しょうか? ……便利なのに。 -- 酒井 政裕 / Masahiro Sakai |
From: Masao M. <mu...@hi...> - 2006-05-26 16:05:40
|
むとうです。 On Fri, 26 May 2006 01:19:05 +0900 (JST) Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > 酒井です。 > > From: "Masao Mutoh" <mut...@gm...> > Date: Thu, 25 May 2006 23:22:08 +0900 > > > むとうです。 > > #なんだか、私のプロバイダからだとメールが送れたり送れなかったり・・・。 > > > > On Thu, 25 May 2006 23:03:29 +0900 (JST) > > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > > > 酒井です。 > > > > > > 以前はソースコードのディレクトリとは別のディレクトリでビルド出来たはず > > > ですが、久しぶりに試したらビルドに失敗しました。 > > > Makefileがビルド用のディレクトリではなくソースコードのディレクトリに作 > > > られてしまったりしています。 > > > > あれ? > > なんでしょう。その辺、全然いじった記憶がないんですけど・・・。 > > 以前というのは2年くらい前の話です。 > たしか当時はcreate_makefile_at_srcdirとかなかったと思いますし、 > それからだいぶ変更されているはずです。 > > しかし、別ディレクトリでビルド出来なくなっていることに誰も気づかない > ということは、みんなは別ディレクトリでビルドしたりはしないものなので > しょうか? ……便利なのに。 いやぁ、実は使い方わかってません(苦笑)。 これって、どうやって使うんでしたっけ? それでは。 -- .:% Masao Mutoh<mu...@hi...> |
From: Masao M. <mu...@hi...> - 2006-05-27 05:42:14
|
むとうです。 On Sat, 27 May 2006 01:25:56 +0900 (JST) Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > 酒井です。 > > > しかし、別ディレクトリでビルド出来なくなっていることに誰も気づかない > > > ということは、みんなは別ディレクトリでビルドしたりはしないものなので > > > しょうか? ……便利なのに。 > > > > いやぁ、実は使い方わかってません(苦笑)。 > > これって、どうやって使うんでしたっけ? > > > > それでは。 > > 単にソースコードのディレクトリとは別ディレクトリでextconf.rbを走らせて、 > そこでビルドするだけです。 > 例えば、複数のRuby向けにそれぞれビルドしたい時とかに便利ですよ。 > > % mkdir build-ruby18 > % cd build-ruby18 > % ruby (Ruby-GNOME2のディレクトリ)/extconf.rb > % make > % cd .. > % mkdir build-yarv > % cd build-yarv > % ruby-yarv (Ruby-GNOME2のディレクトリ)/extconf.rb > % make なるほど。それは便利ですね(今さら)! 忘れないようにHikiにメモっておきました。 http://ruby-gnome2.sourceforge.jp/hiki.cgi?howto_compile_serverl_ruby -- .:% Masao Mutoh<mu...@hi...> |
From: Masao M. <mu...@hi...> - 2006-05-27 06:04:31
|
むとうです。 On Sat, 27 May 2006 14:53:28 +0900 (JST) Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > 酒井です。 > > From: Masao Mutoh <mu...@hi...> > Date: Sat, 27 May 2006 14:42:01 +0900 > > > むとうです。 > > > > On Sat, 27 May 2006 01:25:56 +0900 (JST) > > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > > > 酒井です。 > > > > > > > しかし、別ディレクトリでビルド出来なくなっていることに誰も気づかない > > > > > ということは、みんなは別ディレクトリでビルドしたりはしないものなので > > > > > しょうか? ……便利なのに。 > > > > > > > > いやぁ、実は使い方わかってません(苦笑)。 > > > > これって、どうやって使うんでしたっけ? > > > > > > > > それでは。 > > > > > > 単にソースコードのディレクトリとは別ディレクトリでextconf.rbを走らせて、 > > > そこでビルドするだけです。 > > > 例えば、複数のRuby向けにそれぞれビルドしたい時とかに便利ですよ。 > > > > > > % mkdir build-ruby18 > > > % cd build-ruby18 > > > % ruby (Ruby-GNOME2のディレクトリ)/extconf.rb > > > % make > > > % cd .. > > > % mkdir build-yarv > > > % cd build-yarv > > > % ruby-yarv (Ruby-GNOME2のディレクトリ)/extconf.rb > > > % make > > > > なるほど。それは便利ですね(今さら)! > > > > 忘れないようにHikiにメモっておきました。 > > > > http://ruby-gnome2.sourceforge.jp/hiki.cgi?howto_compile_serverl_ruby > > 前述のように、今は使えなくなってますけどね(汗 あ、そっか。まぁ、いいです。忘れないように、ということで。 -- .:% Masao Mutoh<mu...@hi...> |
From: Masahiro S. ()
<sa...@to...> - 2006-05-27 09:21:58
Attachments:
create_makefile_at_srcdir.patch
|
酒井です。 From: Masao Mutoh <mu...@hi...> Date: Sat, 27 May 2006 15:04:22 +0900 > むとうです。 > > On Sat, 27 May 2006 14:53:28 +0900 (JST) > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > 酒井です。 > > > > From: Masao Mutoh <mu...@hi...> > > Date: Sat, 27 May 2006 14:42:01 +0900 > > > > > むとうです。 > > > > > > On Sat, 27 May 2006 01:25:56 +0900 (JST) > > > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > > > > > 酒井です。 > > > > 単にソースコードのディレクトリとは別ディレクトリでextconf.rbを走らせて、 > > > > そこでビルドするだけです。 > > > > 例えば、複数のRuby向けにそれぞれビルドしたい時とかに便利ですよ。 > > > > > > > > % mkdir build-ruby18 > > > > % cd build-ruby18 > > > > % ruby (Ruby-GNOME2のディレクトリ)/extconf.rb > > > > % make > > > > % cd .. > > > > % mkdir build-yarv > > > > % cd build-yarv > > > > % ruby-yarv (Ruby-GNOME2のディレクトリ)/extconf.rb > > > > % make > > > > > > なるほど。それは便利ですね(今さら)! > > > > > > 忘れないようにHikiにメモっておきました。 > > > > > > http://ruby-gnome2.sourceforge.jp/hiki.cgi?howto_compile_serverl_ruby > > > > 前述のように、今は使えなくなってますけどね(汗 > > あ、そっか。まぁ、いいです。忘れないように、ということで。 とりあえず、Makefileを別ディレクトリに作れるようにするところまでのパッ チを添付します。実際に別ディレクトリでビルド出来るようにするには、 add_depend_package等も変更の必要があるはずです。 -- 酒井 政裕 / Masahiro Sakai |
From: Kazuhiro N. <zn...@mb...> - 2007-08-27 03:04:06
Attachments:
ruby-gnome2.diff
|
西山和広です。 以前にあんまり変更せずに別ディレクトリでのビルドに対応しようと したのですが、ビルドもインストールもできるのにrequireでエラーに なるのが解決できなくて放置していたのですが、思い出したので 公開しておきます。 エラーというのは以下のようになります。 % ruby-1.8.6 -rgtk2 -e 0 ruby-1.8.6: symbol lookup error: /home/kazu/opt/ruby-1.8.6/lib/ruby/site_ruby/1.8/i686-linux/glib2.so: undefined symbol: g_unicode_type_get_type % # なんか関係ないものも混ざっていますが... # (ruby-gnome2/gtk/extconf.rbの重複行削除) -- |ZnZ(ゼット エヌ ゼット) |西山和広(Kazuhiro NISHIYAMA) |
From: Kouhei S. <ko...@co...> - 2007-08-30 10:10:48
|
須藤です。 In <85absa8gxw.wl%zn...@mb...> "Re: [ruby-gnome2-devel-ja] 別ディレクトリでのビルド" on Thu, 30 Aug 2007 01:05:15 +0900, Kazuhiro NISHIYAMA <zn...@mb...> wrote: > > > % ruby-1.8.6 -rgtk2 -e 0 > > > ruby-1.8.6: symbol lookup error: /home/kazu/opt/ruby-1.8.6/lib/ruby/site_ruby/1.8/i686-linux/glib2.so: undefined symbol: g_unicode_type_get_type > > > > ビルド時にglib-enum-types.cというやつを生成するのですが、 > > それがリンクされていないんだと思います。 > > mkmf-gnome2.rbにadd_objというのがあるから使えるのかと思ったら、 > $objsにsrcdirのファイルを集める処理がcreate_makefileの中にあって > 役に立たなかったので、結局create_makefileの中のsrcsを集める処理を > 持ってきて、builddirの方も同じように集めるようにしたら動くように > なりました。 とりあえずコミットしました。 その後、ちょろっといじったので後でもう一度確認してもらえます か? # Debianの人たちってなんで独自であてたパッチをプロジェクトに # 還元しないんだろう。 |
From: Kazuhiro N. <zn...@mb...> - 2007-08-31 08:07:10
|
西山和広です。 At Thu, 30 Aug 2007 19:09:40 +0900 (JST), Kouhei Sutou wrote: > とりあえずコミットしました。 > その後、ちょろっといじったので後でもう一度確認してもらえます > か? glib/src/lib/mkmf-gnome2.rbについては大丈夫のようです。 書き忘れていたのですが、他のパッチもお願いします。 * extconf.rbでの$srcdirなどのexpand_path * atk/src/dependとpango/src/dependでbuilddirに作成されるファイルから 「$(srcdir)/」を削除 * gtk/extconf.rbの重複行削除(別ディレクトリでのビルドとは無関係) # glib/src/lib/mkmf-gnome2.rbを削った以外は最初のと同じなので # 再度添付するのはやめて、 # http://www.n-z.jp/tmp/2007/ruby-gnome2.diff # に置きました。 > # Debianの人たちってなんで独自であてたパッチをプロジェクトに > # 還元しないんだろう。 # 積極的にupstreamと協力してるメンテナもいるからメンテナ次第かなあ...。 -- |ZnZ(ゼット エヌ ゼット) |西山和広(Kazuhiro NISHIYAMA) |
From: Kouhei S. <ko...@co...> - 2007-08-31 08:24:15
|
須藤です。 > 書き忘れていたのですが、他のパッチもお願いします。 あ、ごめんなさい。 コミットしておきました。 > > # Debianの人たちってなんで独自であてたパッチをプロジェクトに > > # 還元しないんだろう。 > > # 積極的にupstreamと協力してるメンテナもいるからメンテナ次第かなあ...。 メンテナ認定試験(?)でそこもちゃんとやってくれればいいのに。。。 |
From: Kouhei S. <ko...@co...> - 2007-08-27 03:27:27
|
須藤です。 > 以前にあんまり変更せずに別ディレクトリでのビルドに対応しようと > したのですが、ビルドもインストールもできるのにrequireでエラーに > なるのが解決できなくて放置していたのですが、思い出したので > 公開しておきます。 > > エラーというのは以下のようになります。 > > % ruby-1.8.6 -rgtk2 -e 0 > ruby-1.8.6: symbol lookup error: /home/kazu/opt/ruby-1.8.6/lib/ruby/site_ruby/1.8/i686-linux/glib2.so: undefined symbol: g_unicode_type_get_type ビルド時にglib-enum-types.cというやつを生成するのですが、 それがリンクされていないんだと思います。 |
From: Kazuhiro N. <zn...@mb...> - 2007-08-29 16:05:21
|
西山和広です。 At Mon, 27 Aug 2007 12:27:25 +0900, Kouhei Sutou wrote: > > > % ruby-1.8.6 -rgtk2 -e 0 > > ruby-1.8.6: symbol lookup error: /home/kazu/opt/ruby-1.8.6/lib/ruby/site_ruby/1.8/i686-linux/glib2.so: undefined symbol: g_unicode_type_get_type > > ビルド時にglib-enum-types.cというやつを生成するのですが、 > それがリンクされていないんだと思います。 mkmf-gnome2.rbにadd_objというのがあるから使えるのかと思ったら、 $objsにsrcdirのファイルを集める処理がcreate_makefileの中にあって 役に立たなかったので、結局create_makefileの中のsrcsを集める処理を 持ってきて、builddirの方も同じように集めるようにしたら動くように なりました。 Index: glib/src/lib/mkmf-gnome2.rb =================================================================== RCS file: /cvsroot/ruby-gnome2/ruby-gnome2/glib/src/lib/mkmf-gnome2.rb,v retrieving revision 1.36 diff -u -p -r1.36 mkmf-gnome2.rb --- glib/src/lib/mkmf-gnome2.rb 28 Dec 2006 19:38:02 -0000 1.36 +++ glib/src/lib/mkmf-gnome2.rb 29 Aug 2007 12:40:44 -0000 @@ -112,7 +112,9 @@ def setup_win32(target_name) end #add_depend_package("glib2", "glib/src", "/...../ruby-gnome2") -def add_depend_package(target_name, target_srcdir, topdir) +def add_depend_package(target_name, target_srcdir, topsrcdir) + [topsrcdir, $configure_args['--topdir']].each do |topdir| + topdir = File.expand_path(topdir) if RUBY_VERSION < "1.8.5" $CFLAGS = "-I#{File.join(topdir, target_srcdir)} #{$CFLAGS}" else @@ -126,6 +128,7 @@ def add_depend_package(target_name, targ $DLDFLAGS << " /libpath:#{topdir}/#{target_srcdir}" $libs << " libruby-#{target_name}.lib" end + end # end def add_distcleanfile(file) @@ -134,16 +137,23 @@ def add_distcleanfile(file) end def create_makefile_at_srcdir(pkg_name, srcdir, defs = nil) - begin - Dir.mkdir(srcdir) unless File.exist? srcdir - Dir.chdir srcdir + builddir = $configure_args['--topdir'] + srcdir[TOPDIR.size..-1] + Dir.mkdir(builddir) unless File.exist? builddir + Dir.chdir(builddir) do yield if block_given? $defs << defs if defs + + $objs = [] + srcs = Dir[File.join(srcdir, "*.{#{SRC_EXT.join(%q{,})}}")] + srcs |= Dir[File.join(".", "*.{#{SRC_EXT.join(%q{,})}}")] + for f in srcs + obj = File.basename(f, ".*") << ".o" + $objs.push(obj) unless $objs.index(obj) + end + create_makefile(pkg_name, srcdir) - ensure - Dir.chdir('..') end end @@ -197,6 +207,7 @@ def make_version_header(app_name, pkgnam add_distcleanfile(filename) + Dir.mkdir(dir) unless File.exist? dir out = File.open(File.join(dir, filename), "w") out.print %Q[/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */ -- |ZnZ(ゼット エヌ ゼット) |西山和広(Kazuhiro NISHIYAMA) |
From: Kouhei S. <ko...@co...> - 2007-09-08 14:49:52
|
須藤です。 07/08/30 に Kazuhiro NISHIYAMA<zn...@mb...> さんは書きました: =================================================================== > RCS file: /cvsroot/ruby-gnome2/ruby-gnome2/glib/src/lib/mkmf-gnome2.rb,v > retrieving revision 1.36 > diff -u -p -r1.36 mkmf-gnome2.rb > --- glib/src/lib/mkmf-gnome2.rb 28 Dec 2006 19:38:02 -0000 1.36 > +++ glib/src/lib/mkmf-gnome2.rb 29 Aug 2007 12:40:44 -0000 > @@ -134,16 +137,23 @@ def add_distcleanfile(file) > end > > def create_makefile_at_srcdir(pkg_name, srcdir, defs = nil) > - begin > - Dir.mkdir(srcdir) unless File.exist? srcdir > - Dir.chdir srcdir > + builddir = $configure_args['--topdir'] + srcdir[TOPDIR.size..-1] > + Dir.mkdir(builddir) unless File.exist? builddir > > + Dir.chdir(builddir) do これですが、TOPDIRの定義を仮定できないようにできませんか? 今は慣習的にTOPDIRを使っていますけどRuby-GNOME2に含まれていない プロジェクトだとadd_depend_package("glib2", "glib/src", TOPDIR)とか しないので、TOPDIRを定義する意味があまりないんですよね。 あと、この変更をするとサブディレクトリ(glib/とかgtk/とか)で ruby extconf.rbするとディレクトリが余分に掘られたところにMakefile ができちゃいます。(glib/glib/src/Makefileとかに) 乗りかかった船なので、直してくれませんか? ついでに、RWikiのアレもやってもらえませんか? ついでの、ついでに、風のやつ、好きな肉だけでも書いてもらえませんか? |
From: Masahiro S. ()
<sa...@to...> - 2006-05-27 05:53:44
|
酒井です。 From: Masao Mutoh <mu...@hi...> Date: Sat, 27 May 2006 14:42:01 +0900 > むとうです。 > > On Sat, 27 May 2006 01:25:56 +0900 (JST) > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > 酒井です。 > > > > > しかし、別ディレクトリでビルド出来なくなっていることに誰も気づかない > > > > ということは、みんなは別ディレクトリでビルドしたりはしないものなので > > > > しょうか? ……便利なのに。 > > > > > > いやぁ、実は使い方わかってません(苦笑)。 > > > これって、どうやって使うんでしたっけ? > > > > > > それでは。 > > > > 単にソースコードのディレクトリとは別ディレクトリでextconf.rbを走らせて、 > > そこでビルドするだけです。 > > 例えば、複数のRuby向けにそれぞれビルドしたい時とかに便利ですよ。 > > > > % mkdir build-ruby18 > > % cd build-ruby18 > > % ruby (Ruby-GNOME2のディレクトリ)/extconf.rb > > % make > > % cd .. > > % mkdir build-yarv > > % cd build-yarv > > % ruby-yarv (Ruby-GNOME2のディレクトリ)/extconf.rb > > % make > > なるほど。それは便利ですね(今さら)! > > 忘れないようにHikiにメモっておきました。 > > http://ruby-gnome2.sourceforge.jp/hiki.cgi?howto_compile_serverl_ruby 前述のように、今は使えなくなってますけどね(汗 -- 酒井 政裕 / Masahiro Sakai |
From: Masahiro S. ()
<sa...@to...> - 2006-05-26 16:26:18
|
酒井です。 From: Masao Mutoh <mu...@hi...> Date: Sat, 27 May 2006 01:05:30 +0900 > むとうです。 > > On Fri, 26 May 2006 01:19:05 +0900 (JST) > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > 酒井です。 > > > > From: "Masao Mutoh" <mut...@gm...> > > Date: Thu, 25 May 2006 23:22:08 +0900 > > > > > むとうです。 > > > #なんだか、私のプロバイダからだとメールが送れたり送れなかったり・・・。 > > > > > > On Thu, 25 May 2006 23:03:29 +0900 (JST) > > > Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > > > > > 酒井です。 > > > > > > > > 以前はソースコードのディレクトリとは別のディレクトリでビルド出来たはず > > > > ですが、久しぶりに試したらビルドに失敗しました。 > > > > Makefileがビルド用のディレクトリではなくソースコードのディレクトリに作 > > > > られてしまったりしています。 > > > > > > あれ? > > > なんでしょう。その辺、全然いじった記憶がないんですけど・・・。 > > > > 以前というのは2年くらい前の話です。 > > たしか当時はcreate_makefile_at_srcdirとかなかったと思いますし、 > > それからだいぶ変更されているはずです。 > > > > しかし、別ディレクトリでビルド出来なくなっていることに誰も気づかない > > ということは、みんなは別ディレクトリでビルドしたりはしないものなので > > しょうか? ……便利なのに。 > > いやぁ、実は使い方わかってません(苦笑)。 > これって、どうやって使うんでしたっけ? > > それでは。 単にソースコードのディレクトリとは別ディレクトリでextconf.rbを走らせて、 そこでビルドするだけです。 例えば、複数のRuby向けにそれぞれビルドしたい時とかに便利ですよ。 % mkdir build-ruby18 % cd build-ruby18 % ruby (Ruby-GNOME2のディレクトリ)/extconf.rb % make % cd .. % mkdir build-yarv % cd build-yarv % ruby-yarv (Ruby-GNOME2のディレクトリ)/extconf.rb % make -- 酒井 政裕 / Masahiro Sakai |
From: Kouhei S. <ko...@co...> - 2006-05-27 01:47:18
|
須藤です. In <200...@to...> "Re: [ruby-gnome2-devel-ja] Re: [ruby-gnome2-devel-ja] 別ディレクトリでのビルド" on Sat, 27 May 2006 01:25:56 +0900 (JST), Masahiro Sakai (酒井政裕) <sa...@to...> wrote: > > > しかし、別ディレクトリでビルド出来なくなっていることに誰も気づかない > > > ということは、みんなは別ディレクトリでビルドしたりはしないものなので > > > しょうか? ……便利なのに。 > > > 例えば、複数のRuby向けにそれぞれビルドしたい時とかに便利ですよ。 あぁ,こういう風に使うんですか.確かに便利ですね. 今度から別ディレクトリでビルドしようかしら. |