__declspec
NodeDumpをruby-mswin32 v1.8.1用にBuildした.大学のサーバが復活したら(月曜の予定),そっちに置きますが,今すぐ欲しい方はコメントをば.
Buildの手順は,
- VisualStudio.NET 2003 Academicでプロジェクトを作成
- プロジェクトはWin32/DLLで,空のプロジェクトを作成する
- プロジェクトのプロパティで,追加のIncludeディレクトリと,ライブラリディレクトリを設定
- 追加のライブラリファイルに,msvcrt-ruby18.libを追加.
- C言語としてコンパイルするよう設定
- 64bit拡張への対応をOffに
- プロジェクトに> ruby extconf.rbして得られる,nd_versions.h,node_names.h,nodeDump.cを登録
- nodeDump.cのInit_NodeDumpに__declspec(dllexport)を追加
- ビルド
- できたDLLをコピー
以上.
他の拡張ライブラリも同じ手順で,exportする関数に__declspec(dllexport)を付ければ,ビルドできるんじゃないかと思う.
例:
__declspec(dllexport) void Init_NodeDump() { ...