//立てた人(あるみく 2014/04/06) *本体のビルド方法 [#z3cc168d] -[[ソースコードを入手する>#source]] -[[VisualStudio2012でビルドする(32bit)>#vs32]] -[[VisualStudio2012でビルドする(64bit)>#vs64]] - - &aname(source); **ソースコードを入手する [#o0e00e7a] [[Github>https://github.com/aburch/simutrans]]から「Download ZIP」する。 &aname(vs32); **VisualStudio2012でビルドする(32bit) [#o0e00e7a] 基本的には、[[日本語化Wiki>http://japanese.simutrans.com/index.php?cmd=read&page=%B3%AB%C8%AF%2F%A5%D3%A5%EB%A5%C9%CA%FD%CB%A1]]に書いてることと同じです。 +[[公式フォーラム>http://forum.simutrans.com/index.php?topic=652.0]]から「libbz2.zip」と「bzlib.h」をダウンロードし、「libbz2.zip」は適当な場所に展開する。 +[[OpenTTD用のライブラリ>https://www.openttd.org/en/download-openttd-useful]]の最新版をダウンロードし、適当な場所に展開する。 +[[pthreadのライブラリの最新版>ftp://sourceware.org/pub/pthreads-win32]]を[[FFFTP>http://sourceforge.jp/projects/ffftp/]]などでダウンロードする。 「prebuilt-dll-x-x-x-release」内の「dll」「include」「lib」をフォルダごとダウンロードする。 +ソースフォルダ内のソリューションファイル(Simutrans.sln)を開く。 この時、コンパイラとライブラリの更新について聞かれるので、更新するを選んでください。 +ソリューションエクスプローラのプロパティを開き(レンチのアイコン)、「構成プロパティ→VC++ディレクトリ」を開きます。 &attachref(./Simu1.PNG); +~インクルードディレクトリに以下の場所に入っている *.hファイル の入ったディレクトリを追加します。 --OpenTTDのライブラリ: \(展開先)\OpenTTD essentials\shared\include --pthreadのライブラリ: \(ダウンロード先)\include --bzlib.hはpthreadのincludeに入れると楽です。 &attachref(./Simu2.PNG); ''注意: 環境によって異なります'' +~ライブラリディレクトリに以下の場所にある *.libファイル *.aファイル *.dllファイル の入ったディレクトリを指定します。 --OpenTTDのライブラリ: \(展開先)\win32\library --pthreadのライブラリ: \(ダウンロード先)\lib\x86 と \(ダウンロード先)\dll\x86 --libbz2.libはさっきと同じように、pthreadのところへ入れてしまいましょう +ソリューションエクスプローラの「構成プロパティ→リンカー→コマンドライン」を開き、追加オプションに「/SAFESEH:NO」と入力してください。 &attachref(./Simu4.PNG); +一箇所、ソースをいじるところがあります。 --図のように、ソリューションエクスプローラで「simversion.h」を検索して、開く --「#include "revision.h"」の一文を削除 &attachref(./Simu3.PNG); +「ビルド(B) → ソリューションのビルド」をクリックし、ビルドします。 +~エラーが無ければ、Debugフォルダ内にSimutrans.exeが出来ています。 [[nightly build>http://nightly.simutrans-germany.com/]]からWindows/GDIの「必須DLL他ファイル一式同梱」をダウンロードし、その展開先にさっきのSimutrans.exeを入れてください。 なお、 \(pthreadのダウンロード先)\dll にある pthreadVC2.dll が無いと動きません。 &aname(vs64); **VisualStudio2012でビルドする(64bit) [#o0e00e7a] ''注意: なぜか保存・再開できません'' 基本的には、32bitと同じですが、以下の点が異なります。 -~ライブラリディレクトリを以下のように指定する。 --OpenTTDのライブラリ: \(展開先)\win64\library --pthreadのライブラリ: \(ダウンロード先)\lib\x64 と \(ダウンロード先)\dll\x64 -~ソリューションプラットフォームの変更 --ツールバーの「Win32」のところのドロップダウンリスト→「構成マネージャー...」 --「アクティブ ソリューション プラットフォーム(P)」→「<新規作成...>」 --「新しいプラットフォームを入力または選択してください(P):」が「x64」になっていることを確認し、「OK」 &attachref(./Simu5.PNG); -~Bzip2をコンパイルする --[[bzip2>http://www.bzip.org/downloads.html]]のソースコードをダウンロードする。 --ソリューションプラットフォームを「x64」にし、ビルドする --Debugフォルダ内のlibbz2.libを32bitと同じように配置する -~これでとりあえず、ビルドできるはずです。 コンパイルが終わったらSimutrans.exeが出来ます。 --libbzip2.dllがいると言われるので、コンパイルしたフォルダ内のlibbzip2.dllをコピーする --「\(pthreadのダウンロード先)\dll\x64」内の「pthreadGC2.dll」と「pthreadVC2.dll」も必要です。 --32bitとは共存できません