DCSS/Windows版ビルドガイド
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
DCSS(英語版)を手元でソースコードからビルドするための覚え書き。
* 現行版
** 環境
Ubuntu Linux 16.04 LTS
** 準備
[[DCSS/インストールガイド]]の手順の他、mingw-w64をインストールする。
# apt-get install mingw-w64
zipが入っていなかったらインストールする。
# apt-get install zip
** ソースコードのダウンロード
% git clone https://github.com/crawl/crawl.git
% cd crawl
% git checkout (目的のブランチ)
% git submodule update --init
** クロスコンパイル
% cd crawl-ref/source
% make CROSSHOST=i686-w64-mingw32 package-windows-zips
stone_soup-(バージョン番号)-(tiles-)win32.zipが生成される。~
適当な方法でWindows側にコピーする。
* 旧版
この手順では一部タイルが読み込めなかったりします。単に記録のために残しておきます。
** 環境
Windows 10 Home (Windows 10 Fall Creators Update適用)
** 準備
*** Git for Windows SDK 1.0.6をインストール
https://github.com/git-for-windows/build-extra/releases からgit-sdk-installer-1.0.6-64.7z.exeをダウンロードして実行。
c:\git-sdk-64が生成されるので、エクスプローラ等で開いてgit-bash.exeを実行する。
出てきた黒い画面に「git version」と入力し、Enterを押して「git version 2.9.3.windows.2」等と帰ってくればOK。(細かい数字は異なるかも)
&ref(git-bash1.png);
*** ソースコードをダウンロード
本家からソースコードをDLし、目的のバージョンに切り替える。(この例ではstone_soup-0.16ブランチ)
$ git clone --recursive https://github.com/crawl/crawl.git dcss-0.16
$ cd dcss-0.16
$ git checkout --track origin/stone_soup-0.16
** ビルド
タイル版をビルドする。
$ cd crawl-ref/source
$ make TILES=y
配布用zipをビルドすることもできる。(stone_soup-(バージョン文字列)-win32.zipが生成される)
$ make TILES=y package-windows-zips
** 実行
生成されたcrawl.exeを実行するとDCSSタイル版が起動する。
** トラブルシュート
*** sdl2のコンパイルエラーが起こるとき
↓こういうエラーが出るとき。
In file included from src/core/windows/SDL_xinput.c:24:0:
src/core/windows/SDL_xinput.h:115:3: error: conflicting types for 'XINPUT_GAMEPAD_EX'
} XINPUT_GAMEPAD_EX;
^~~~~~~~~~~~~~~~~
In file included from src/core/windows/SDL_xinput.h:29:0,
from src/core/windows/SDL_xinput.c:24:
C:/git-sdk-64/mingw64/x86_64-w64-mingw32/include/xinput.h:182:3: note: previous declaration of 'XINPUT_GAMEPAD_EX' was here
} XINPUT_GAMEPAD_EX, *PXINPUT_GAMEPAD_EX;
^~~~~~~~~~~~~~~~~
In file included from src/core/windows/SDL_xinput.c:24:0:
src/core/windows/SDL_xinput.h:123:3: error: conflicting types for 'XINPUT_STATE_EX'
} XINPUT_STATE_EX;
^~~~~~~~~~~~~~~
In file included from src/core/windows/SDL_xinput.h:29:0,
from src/core/windows/SDL_xinput.c:24:
C:/git-sdk-64/mingw64/x86_64-w64-mingw32/include/xinput.h:192:3: note: previous declaration of 'XINPUT_STATE_EX' was here
} XINPUT_STATE_EX, *PXINPUT_STATE_EX;
crawl-ref/source/contrib/sdl2/src/core/windows/SDL_xinput.hを適当なエディタで開いて~
(0.20以前などの場合で、存在しなければcontrib/sdl2/src/joystick/windows/SDL_dxjoystick.h)
#ifndef HAVE_XINPUT_GAMEPAD_EX
typedef struct
{
WORD wButtons;
BYTE bLeftTrigger;
BYTE bRightTrigger;
SHORT sThumbLX;
SHORT sThumbLY;
SHORT sThumbRX;
SHORT sThumbRY;
DWORD dwPaddingReserved;
} XINPUT_GAMEPAD_EX;
#endif
#ifndef HAVE_XINPUT_STATE_EX
typedef struct
{
DWORD dwPacketNumber;
XINPUT_GAMEPAD_EX Gamepad;
} XINPUT_STATE_EX;
#endif
の箇所を削除するかコメントアウトする。
*** pacman -S (パッケージ名)して"database file for 'git-for-windows-mingw32' does not exist"とか表示された場合
$ pacman -Syy
でデータベースを同期させる。
*** ビルド中に"which: no advpng in (~)"や"which: no pngcrush in (~)"と表示される
PNG画像容量削減ツールの有無に関するメッセージなので無視してもたぶん大丈夫。
気になる場合はエクスプローラのアドレス欄に「%USERPROFILE%」と入力して移動し、"bin"という名称のフォルダを作成し、下記URLからダウンロード(("Download"のボタンを押す))したadvpng.exeをコピーもしくは移動しておく。
- https://github.com/imagemin/advpng-bin/blob/master/vendor/win32/advpng.exe
終了行:
DCSS(英語版)を手元でソースコードからビルドするための覚え書き。
* 現行版
** 環境
Ubuntu Linux 16.04 LTS
** 準備
[[DCSS/インストールガイド]]の手順の他、mingw-w64をインストールする。
# apt-get install mingw-w64
zipが入っていなかったらインストールする。
# apt-get install zip
** ソースコードのダウンロード
% git clone https://github.com/crawl/crawl.git
% cd crawl
% git checkout (目的のブランチ)
% git submodule update --init
** クロスコンパイル
% cd crawl-ref/source
% make CROSSHOST=i686-w64-mingw32 package-windows-zips
stone_soup-(バージョン番号)-(tiles-)win32.zipが生成される。~
適当な方法でWindows側にコピーする。
* 旧版
この手順では一部タイルが読み込めなかったりします。単に記録のために残しておきます。
** 環境
Windows 10 Home (Windows 10 Fall Creators Update適用)
** 準備
*** Git for Windows SDK 1.0.6をインストール
https://github.com/git-for-windows/build-extra/releases からgit-sdk-installer-1.0.6-64.7z.exeをダウンロードして実行。
c:\git-sdk-64が生成されるので、エクスプローラ等で開いてgit-bash.exeを実行する。
出てきた黒い画面に「git version」と入力し、Enterを押して「git version 2.9.3.windows.2」等と帰ってくればOK。(細かい数字は異なるかも)
&ref(git-bash1.png);
*** ソースコードをダウンロード
本家からソースコードをDLし、目的のバージョンに切り替える。(この例ではstone_soup-0.16ブランチ)
$ git clone --recursive https://github.com/crawl/crawl.git dcss-0.16
$ cd dcss-0.16
$ git checkout --track origin/stone_soup-0.16
** ビルド
タイル版をビルドする。
$ cd crawl-ref/source
$ make TILES=y
配布用zipをビルドすることもできる。(stone_soup-(バージョン文字列)-win32.zipが生成される)
$ make TILES=y package-windows-zips
** 実行
生成されたcrawl.exeを実行するとDCSSタイル版が起動する。
** トラブルシュート
*** sdl2のコンパイルエラーが起こるとき
↓こういうエラーが出るとき。
In file included from src/core/windows/SDL_xinput.c:24:0:
src/core/windows/SDL_xinput.h:115:3: error: conflicting types for 'XINPUT_GAMEPAD_EX'
} XINPUT_GAMEPAD_EX;
^~~~~~~~~~~~~~~~~
In file included from src/core/windows/SDL_xinput.h:29:0,
from src/core/windows/SDL_xinput.c:24:
C:/git-sdk-64/mingw64/x86_64-w64-mingw32/include/xinput.h:182:3: note: previous declaration of 'XINPUT_GAMEPAD_EX' was here
} XINPUT_GAMEPAD_EX, *PXINPUT_GAMEPAD_EX;
^~~~~~~~~~~~~~~~~
In file included from src/core/windows/SDL_xinput.c:24:0:
src/core/windows/SDL_xinput.h:123:3: error: conflicting types for 'XINPUT_STATE_EX'
} XINPUT_STATE_EX;
^~~~~~~~~~~~~~~
In file included from src/core/windows/SDL_xinput.h:29:0,
from src/core/windows/SDL_xinput.c:24:
C:/git-sdk-64/mingw64/x86_64-w64-mingw32/include/xinput.h:192:3: note: previous declaration of 'XINPUT_STATE_EX' was here
} XINPUT_STATE_EX, *PXINPUT_STATE_EX;
crawl-ref/source/contrib/sdl2/src/core/windows/SDL_xinput.hを適当なエディタで開いて~
(0.20以前などの場合で、存在しなければcontrib/sdl2/src/joystick/windows/SDL_dxjoystick.h)
#ifndef HAVE_XINPUT_GAMEPAD_EX
typedef struct
{
WORD wButtons;
BYTE bLeftTrigger;
BYTE bRightTrigger;
SHORT sThumbLX;
SHORT sThumbLY;
SHORT sThumbRX;
SHORT sThumbRY;
DWORD dwPaddingReserved;
} XINPUT_GAMEPAD_EX;
#endif
#ifndef HAVE_XINPUT_STATE_EX
typedef struct
{
DWORD dwPacketNumber;
XINPUT_GAMEPAD_EX Gamepad;
} XINPUT_STATE_EX;
#endif
の箇所を削除するかコメントアウトする。
*** pacman -S (パッケージ名)して"database file for 'git-for-windows-mingw32' does not exist"とか表示された場合
$ pacman -Syy
でデータベースを同期させる。
*** ビルド中に"which: no advpng in (~)"や"which: no pngcrush in (~)"と表示される
PNG画像容量削減ツールの有無に関するメッセージなので無視してもたぶん大丈夫。
気になる場合はエクスプローラのアドレス欄に「%USERPROFILE%」と入力して移動し、"bin"という名称のフォルダを作成し、下記URLからダウンロード(("Download"のボタンを押す))したadvpng.exeをコピーもしくは移動しておく。
- https://github.com/imagemin/advpng-bin/blob/master/vendor/win32/advpng.exe
ページ名: