試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

openBVEと関連ツールのビルドメモ(2012年5月時点・前半)

ソースの入手

2012年5月時点では
http://www.openbve.org/Download/source-code
から以下のソースファイル群が入手可能となっている。

  • openbve_stable_source.zip: openBVE本体のソース
  • tool_objectbender_source.zip: Object Benderのソース
  • tool_objectviewer_source.zip: Object Viewerのソース
  • tool_routeviewer_source.zip: Route Viewerのソース
  • tool_traineditor_source.zip: Train Editorのソース

ダウンロードは、ファイル名のリンクではなく右端の下矢印から行う。

必要なパッケージ

MonoのC#コンパイラdmcs(Debian/Ubuntuでは「mono-dmcs」パッケージ)に加え、Tao Frameworkの

の開発パッケージがそれぞれ必要となる。Debian/Ubuntuでは

  • libtaoframework-openal-cil-dev
  • libtaoframework-opengl-cil-dev
  • libtaoframework-sdl-cil-dev

の3つ。
更にビルドにはxbuildというツールも用いる(手動でコンパイラを実行する場合は不要)。これはDebian/Ubuntuでは「mono-xbuild」というパッケージ名になっている。

本体の修正とビルド

.NET 4向けのビルドを行うための修正

そのままでは幾つかのディレクトリで.NET 2向けのコンパイラ(gmcs)を動かそうとする(.NET 4向けにはdmcsが用いられる)ため、.csprojファイルの

<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>

の行は全て

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

にする。

(ソースの最上位ディレクトリにいることを確認)
$ ls -F
AtsPluginProxy/  Readme.txt  openBVE/

(修正作業)
$ sed -i 's:<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>:<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>:' openBVE/*/*.csproj
Debian/Ubuntu向けの修正

Debian/UbuntuではTao Frameworkのバージョンの関係でコード(openBVE/OpenBve/OldCode/Renderer.cs)内の

  • 「Gl.GL_TRUE」を「true」に
  • 「Gl.GL_FALSE」を「false」に

それぞれ置換する必要がある。

$ sed -i -e 's:Gl.GL_TRUE:true:' -e 's:Gl.GL_FALSE:false:' openBVE/OpenBve/OldCode/Renderer.cs

(「openBVEと関連ツールのビルドメモ(2012年5月時点・後半)」に続く)

関連記事: