丁稚な日々

Rubyで遊んだ日々の記録。あくまで著者視点の私的な記録なので、正確さを求めないように。
Rubyと関係ない話題にはその旨注記しているはず。なので、一見関係無いように見える話題もどこかで関係あるのかもしれません。または、注記の書き忘れかもしれません...

[直前] [最新] [直後] [Top]

Oct.1,2009 (Thu)

Revision: 1.2 (Oct.01,2009 15:40)

[mswin32] msvcrt

_ 最後までrubyが作れるようになったので、やり方を説明。

  1. VC9とWDKを用意する。Microsoftに年貢を払っていない人も、無料ダウンロード可能。
  2. VC9のbin\vcvarsall.batを実行するなりして必要な環境変数を設定する。
  3. 環境変数INCLUDEの先頭にWDKのinc\crtのフルパスを、LIBの先頭にWDKのlib\crt\i386のフルパスを、それぞれ挿入する。当然だが、もしx64版がターゲットであればLIBの方はlib\crt\amd64
  4. 現在のrubyのtrunkを拾ってくる。
  5. たぶんもうすぐ消えると思うけど、eval.cの中にenvironを使っているところがあれば全部消す。
  6. Let's make!

※今のtrunkにはどうも問題があるらしく、度々minirubyが落ちると思うけど(これは普通にrubyを作ろうとしても同じ)、makeを繰り返してなんとかしてください。

_ というわけで、なんとかなっちゃったんだけど、今後どうしたものかなあ。
config.hとrbconfig.rbの問題を除けば、これに移行しちゃってもいいんだが...

Oct.5,2009 (Mon)

Revision: 1.2 (Oct.05,2009 09:18)

[Web] VC9 with msvcrt.dll

_ 問題なんて特になくて(ぉ、VC9で使える、msvcrt.dll用のヘッダとインポートライブラリをいかに入手するかだけですね。
で、WDKにそれがあった、と。
単にそれだけ。それを見つけることさえできていれば誰でも同じことができたはず。

_ いやまあ、rubyのソースコード中にはVCのバージョンによって処理を変えているところがあるわけですが、実際にはコンパイラのバージョンによって変えるべきところとランタイムのバージョンによって変えるべきところがあるので、その辺を整理する必要はありました。
あと、WDKのインポートライブラリにはなぜか含まれていない微妙な関数・変数があるので、その辺の利用を避けたりする必要もあったわけですが、そもそも使う必要がなかったじゃんこいつらみたいな感じだったので問題のうちに入らんわ、みたいな。

_ しかし、stat系の関数がないのはなんでだろう?
1.9はいいけど1.8が...


被捕捉アンテナ類
[Ant] [Antenna-Julia] [Rabbit's Antenna] [Ruby hotlinks]