SimpleROHook ビルドガイド (2014.07.10加筆修正)
SimpleROHook ビルドマニュアル
基本的に分からない人向けです。分かる人は該当部分を補完、もしくは読み飛ばしてください。
- Visual C++ 2010 Express のインストール
- Visual Studio Express 2013 for Windows Desktop のインストール
- DirectX Software Development Kit ( dxsdk_aug2007.exe )のインストール
- DirectX SDK Aug 2007 の不具合修正と環境設定
- GitHubからSimpleROHookのプロジェクトを取得してビルド
1,2,3は順番が前後しても構いません。細かい関連付けの変化が気になる方はVicual C++ 2010 Expressを先にインストールしましょう。バージョン違いのVisual Studioの起動はバージョンセレクタが処理してくれます。
なお、ある程度開発環境の整備に関して知識がある人は以下のMicrosoftのページを参考にして、他のPCからビルド環境を手動でコピーしてくることも出来ます。面倒なのでお勧めはしませんがディスク容量の節約になります。
チュートリアル: 複数のコンピューターを使用するビルド環境の作成
http://msdn.microsoft.com/ja-jp/library/jj850211.aspx#installingmsbuildtogac
Visual C++ 2010 Express のインストール
インストール目的はVisual C++ 2010のビルドツールと、付属するC++の標準ライブラリ(V5.20:0009)を手に入れるためです。VS2013に含まれる標準ライブラリ(V6.00:0009)ではコンテナが異なるためコンパイルが通ってもRO上では動作しません。
次のリンクをクリックすると vc_web.exe がダウンロードされるので実行してください。
http://go.microsoft.com/?linkid=9709955
インストールオプションはチェックを外して、なるべくいらない物は削るようにします。
まぁ、それでも1.2Gは食う様ですが大目に見て下さい。
また、Visual Studio 2010 はサービスパックがリリースされているので Windows Update 等から入手してインストールして下さい。この更新を行わないと、ビルド時にリンクエラーが出る恐れがあります。
Visual Studio Express 2013 for Windows Desktop のインストール
次のリンクをクリックしダウンロードサイトへ移動して下さい。
http://go.microsoft.com/?linkid=9832284&clcid=0x411
これをダウンロードするにはMicrosoft アカウントでログインする必要があります。指示に従いExpressバージョンをダウンロードし、インストールしてください。
なお、真面目に環境構築を考えている方はこちらをご覧ください。
インストールで特に説明することは有りません。待っていれば終了します。
DirectX Software Development Kit ( dxsdk_aug2007.exe )のインストール
次のリンクをクリックし、ダウンロードサイトへ移動して下さい。ダウンロードボタンをクリックすれdxsdk_aug2007.exeのダウンロードが始まります。アーカイブが必要ない方は直接実行してインストールしてください。
他のマシンにファイルがある等、既にDirectX SDK aug 2007のincludeとlibディレクトリを所持していれば、ファイルをコピーして環境変数を設定するだけで構いません。
http://www.microsoft.com/en-us/download/details.aspx?id=13287
分かりやすいように標準テンポラリ以外の場所へ展開しましょう。これは初回の実行では互換性の問題で弾かれるため、2度インストーラーを実行する必要があるからです。
展開後に自動的にSetupが実行されますが、Windows 8.1の場合は互換性アシスタントが.NET Framework 3.5をインストールするよう促すのでインストールして下さい。DirectX SDK aud 2007のインストーラーは.NET Framework 1.1が使われているので、これをインストールしないとDirectX SDKがインストールできません。
プログラム互換性アシスタントを閉じて、再度Setupを実行します。
必要なのはヘッダとライブラリだけです。ただし、ヘッダとライブラリのみのインストールでは環境変数が設定されないという不都合があるため、全て展開してしまったほうが良いかもしれません。
DirectX SDK Aug 2007 の不具合修正と環境設定
近年の開発環境と、このバージョンのSDKをセットで使うとコンパイル時に以下の様なエラーが出てしまいます。
これはDirectX SDK Aug 2007のIncludeディレクトリにあるrpcsal.hというファイルが古いために起こるので、これをリネームして、新しいファイルを優先して参照させることで解決させます。
次の例ではファイル名の先頭にアンダースコアを付ける事で解決しています。ソート時に先頭に来ることから、筆者はこの手をよく使います。
古いDirectX SDKは常時使うわけではないのでシステム環境変数を変更してしまいます。
エクスプローラからPCのプロパティを開きます。
さらに、システムの詳細設定を開きます。
ここに環境変数を設定できるボタンが存在します。
環境変数の名前をDXSDK_DIRからDXSDK_AUG07_DIRに変更して下さい。ヘッダとライブラリのみをインストールした場合は、DXSDK_DIRが設定されないので、インストールディレクトリを調べて設定する必要があります。
以下のようになるように設定して下さい。この設定はSimpleROHookのインクルードディレクトリの場所を判別するために使用されます。
DXSDK_AUG07_DIR = “C:\Program Files (x86)\Microsoft DirectX SDK (August 2007)\”
環境変数がきちんと設定されているかどうかは、コマンドプロンプトを起動してsetコマンドを実行する事で確認が出来ます。設定が反映されていないようであればWindowsにサインインしなおしてみるのもいいかも知れません。
GitHubからSimpleROHookのプロジェクトを取得してビルド
Visual Studio Express 2013 for Windows Desktopを起動し、チームエクスプローラを表示させます。
その後の作業は以下で詳しく説明しています。
Visual Studio 2013 でGitHubからCloneしてくる | Planetleaf.com Lab.
https://lab.planetleaf.com/clone-repos-with-visual-studio-2013-from-github.html
ローカルリポジトリをダブルクリックして開き、さらにその中のソリューションファイルを開きます。
続いて、先のリンクの通りに「プロジェクトとソリューションの変更をレビュー」でキャンセルを選択します。
ビルド構成に関する注意
RO本体がデバッグ仕様でビルドされていないので、SimpleROHookをDebug構成でビルドするとSTLのコンテナの違いから正しく動作しません。ビルドはRelease構成で行ってください。ビルドメニュー、もしくはF7でビルドを開始し出来ます。
エラーなく終了すればソリューションのReleaseフォルダに実行ファイルが出来上がっているはずです。
ディスカッション
コメント一覧
まだ、コメントがありません