ビルド方法

Visual C++ および MinGW (gcc) で RailSim II をビルドする方法を解説しています。

ビルド方法(共通)

DirectX 8.1 SDK もしくは d3d8.h の含まれている DirectX 9 系 SDK をインストールします。

例えば、下記 URL のものが有効です。

http://www.microsoft.com/downloads/details.aspx?FamilyId=FD044A42-9912-42A3-9A9E-D857199F888E&displaylang=en

これ以降はコンパイラによって下記のいずれかのビルド方法に従ってください。

ビルド方法(VC2010)

暫定的に Visual Studio 2010 でもビルドできるようにしてみました。

環境変数 DX8SDK_ROOT に上記の DirectX SDK をインストールしたディレクトリを設定してビルドしてください。

ビルド方法(VC6)

インクルードファイル、ライブラリファイルのディレクトリをそれぞれ SDK の include, lib に設定します。

ビルドします。

より新しい Visual C++ でも同様の手順でビルドできると思われます。

ビルド方法(MinGW)

Makefile の DXSDK_PATH を SDK パス(include や lib といったディレクトリのある場所)に設定します。ただし、使用するのはインクルードファイルのみで、ライブラリは MinGW 付属のものを使用します。

make してみます。

stray '\26' がどうのこうのというエラーが出たら、そのファイルの末尾に変なコードの文字が含まれているので削除します。

例えば、dxfile.h の末尾に 0x1a というコードの文字が入っていてエラーになるので、これを削除します。

"○○ changes meaning of ××" とかいうエラーが出たら、ある構造体の中で型名と同じ名前のデータメンバを定義しようとしているので、メンバ名を適当に変更します(これらのメンバは変数名を介してはたぶん使われていないと思われます)。

例えば、strmif.h というファイルの typedef struct tagVMRGUID という宣言の部分で

    WLOOP           WLOOP[1];

という文があるので

    WLOOP           _WLOOP[1];

という風に変更します。

MinGW ビルド時は d3dx8d.dll というファイルが別途必要になります(VC ビルド時は静的リンクライブラリとしてリンクされるため不要)。このファイルは Windows の標準的な状態ではインストールされていない可能性が高いため、SDK に含まれているものを .exe と同じ場所もしくはシステムフォルダ等にコピーしておきます。

マルチスレッド対応CPUならば、メイク時に

make -j8

などとすると高速にビルドできます。

※注意

MSYS 付属の make では、特定の DOS コマンドがうまく動かないため、付属 Makefile が使用できない場合があります。MinGW オリジナルの make を使用してください。