[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:003384] Re: Multibitnums の 1.9.2 対応



佐々木さん:

対応して cvs commit しました.確認できるでしょうか.

豊田さん,フォローありがとうございました.
件の場所は2001年頃は必要だった rb_define_module 
のケア(定義済みの場合対応)ですが,もはや要らない
のでざっくり削除しました.(たぶんruby 1.6系のわりと
早めのバージョンから不用で,RubyDCL等でもそうしてるのに
あわせました.)

テストについても 1.9 で動作しないのを直しました.
(Integer#chrを陽に呼ぶ).

# HDF EOSのテストプログラム32bit対応が先送りになってて
   申し訳ありません.問題は再現できてるのですが....

> テストしてみる時間と気力がわかないので放言ですが、
> 
> このへんですよね。
> 
> multibitnums.c:
>     202 void
>     203 Init_multibitnums()
>     204 {
>     205     extern VALUE ruby_class;
>     206     ID id;
>     207     id = rb_intern("NumRu");
>     208     if (rb_const_defined_at(ruby_class, id)) {
>     209         mNumRu = rb_const_get(ruby_class, id);
>     210     }
> 
> まあまずはヘッダにない C の外部名を extern とかいってほじくりだしている時点で死亡フラグです。(えらそうに言ったときに限って調べると書いたの俺、なんてことがあるかもしれませんが)。
> 
> で、これは、ruby_class のかわりに rb_cObject を使えたりしないですかね。
> 
> ruby_class == rb_cObject でない状況というのは、たぶんモジュール内なので、NumRu 
> モジュールのなかで require されるとだめなのか、というあたりが疑問なのですが、テストしてませんごめんなさい。
> 
> 豊田
> 
> ----- Original Message ----- 
> From: "Youhei SASAKI" <uwabami@xxxxxxxxxxxxxx>
> To: "Takeshi Horinouchi" <horinout@xxxxxxxxxxxxxxxxx>
> Cc: "Dennou-Ruby Project" <dennou-ruby@xxxxxxxxxxx>
> Sent: Sunday, July 24, 2011 11:57 PM
> Subject: [dennou-ruby:003382] Multibitnums の 1.9.2 対応
> 
> 
> > 堀之内様(Cc: dennou-ruby) : 佐々木です.
> >
> > multibitnums のパッケージングをしております.
> >
> > Debian では, 次期安定板(現 testing) Wheezy より, 既存のパッケージは
> > Ruby1.8/1.9.2 双方で動作することが求められています. なので, 添付の(汚い)
> > パッチを書いてみましたが, 動作させる所で転んでいます.
> >
> > 具体的には numru/multibitnums を require した時点で
> >
> > /usr/lib/ruby/vendor_ruby/1.9.1/x86_64-linux/numru/multibitnums.so: 
> > undefined symbol: ruby_class
> >
> > となっています. Ruby1.8 から Ruby1.9.x になった段階での変更だと思われます
> > が, 如何しましょうか?
> >
> > ちなみに, 添付のパッチは Ruby1.9.1 対応(ad hoc に RSTRING_PTR 等を書き変
> > えた) と test/ 以下を test/unit で書き変えています.
> >
> > ---
> > Youhei SASAKI <uwabami@xxxxxxxxxxxxxx>
> >              <uwabami@xxxxxxxxxxxxxxxxxx>
> > Department of Mathematics, Kyoto University
> > GPG fingerprint:
> >  4096/RSA: 66A4 EA70 4FE2 4055 8D6A C2E6 9394 F354 891D 7E07
> > 
> 

堀之内 武
北海道大学 地球環境科学研究院 地球圏科学部門
〒060-0810 札幌市北区北10条西5丁目