From: "U.Nakamura" Date: 2002-09-13T18:51:04+09:00 Subject: [ruby-dev:18281] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog. こんにちは、なかむら(う)です。 At Sep.13,2002 18:16:58, wrote in '[ruby-dev:18280] Re: [ruby-cvs] rough/ext/stringio: * ruby-stringio.spec: 0.0.7, added changelog.' > > > 面倒だから > > > #include > > > #include > > > じゃなくて > > > #include "ruby.h" > > > のほうがいいかなあ。 > > > > それはそんな気がします。 > > > > 今、try_linkでrubyのdll/so/libってリンクしてましたっけ? > > してないならそれも必要? > > rubyのソースに使われてるものやmissing/にあるものは、そもそも > checkする必要はないということに気づきました。使えるはずだから。 > とすればhave_*でruby.hをincludeしなくてもいいし、 > $(LIBRUBYARG)も必要ないのかもしれない? ちょっと考え直しつつ整理してみましょう。 (1) 普通はruby自身が持ってる関数の有無はチェックしなくていい * だからruby.hをincludeする必要はない * $libsや$LIBPATHをいじる必要もない (2) しかし、rubyのバージョンによってあったりなかったりするも のをチェックしたい場合もある(表題のStringIOはまさにそれ) * この場合はruby.hをincludeしたい * $libsや$LIBPATHもいじらないといけない (3) win32/win32.hで関数名をいじっているものをチェックされたと き、ruby.hをincludeしてなかったりrubyのdll/lib/soをリンク しなかったりする場合は関数が発見できない * 対策は(2)と同じ、かな? (1)の場合は現状のままでよし、と。 (2)の場合は、extconf.rbを書く人がわかっててやってるので、これ も現状のままでいいように思える(StringIOと同じようにやってね、 ってことで)。 > って何を提案したんだ? で、(3)の場合が問題な気がするので、対策した方がいいのかどうか、 っていうお話なのだと思ったのですが、違います? それでは。 -- U.Nakamura # 風邪のせいでわけわかんないこと書いてるかも