超人工生命ハッカソンに向けてWindows10マシンにpython環境を整えた

超人工生命ハッカソン http://connpass.com/event/28982/ に向けてWindowsマシンにpython環境を整えたときのメモです

（前提）
　自分のWindowsPCは以下の通りです
　・Windows 10 (64bit) がインストールされている
　・nVidiaのGPUを搭載している

●git環境を入れる
　それぞれ好きなものを入れると良いのですが、個人的には Tortoise Gitが好き（慣れてるだけ）
　■TortoiseGitのインストール方法
　http://www.aise.ics.saitama-u.ac.jp/~gotoh/HowToInstallTortoiseGit.html


●Visual Studio Community 2013 with Update 5 をインストールしておく
　CUDA Toolkit 関連で必要になります。
　すでに Visual Studio 2013 が入っている人はこの作業の必要はありません。
  https://www.visualstudio.com/ja-jp/downloads/download-visual-studio-vs
  上記ページの下の方の「Visual Studio 2013」をクリックして、
　さらに「Community 2013」をクリックするとダウンロードボタンが表示されます。 

●CUDA Toolkit をインストール
  https://developer.nvidia.com/cuda-toolkit
　Windows x86_64 バージョンのインストーラーをダウンロードしてインストールしましょう。


●cuDNN をインストール
　ユーザー登録しないとダウンロード出来ず、登録してもすぐにダウンロードできないそうです。
　（自分はたまたま昔に登録してあったのでダウンロードできました）

　ダウンロードするのは「cuDNN v4 Library for Windows」です（最新ではありません）
　chainerは cuDNN v2 v3 v4 はサポートしていますが、v5を入れるとコンパイルエラーでハマります（ハマった）

  https://developer.nvidia.com/cudnn
    cudnn-7.0-win-x64-v4.0-prod.zip 

　解凍したら出てくる bin/ include/ lib/ を CUDA Toolkit をインストールしたフォルダに上書きするだけ。


●python 環境をインストール

 ■python 2.7.9 for windows をインストール  （※自分はこっちにしました）
  https://www.python.org/downloads/release/python-279/
　ページの下のほうにある「Windows debug information files for 64-bit binaries」をダウンロードして実行。
　python.exeにpathを通す（英語）にチェック

 ■Anaconda for Windows 64bit (python 2.7)をインストールする
  https://www.continuum.io/downloads
　「Windows 64-bit」インストーラーをダウンロードして実行。


●Microsoft Visual C++ Compiler for Python 2.7 を以下からダウンロードしてインストール
  https://www.microsoft.com/en-us/download/details.aspx?id=44266
　python 2.7向けのコンパイラ(VC2008)で、インストールするとユーザー専用のフォルダにインストールされます


●stdint.h を上記コンパイラのincludeフォルダにコピー
　VC2008は stdint.h が無くてコンパイル時にエラーになるので入れておきます
    http://msinttypes.googlecode.com/svn/trunk/stdint.h
　上記リンクを右クリックしてファイルに保存 -> stdint.h 
　 C:\Users\(ユーザー名)\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\include
　にコピーします（ stdint.h ファイルを置く）


●コマンドラインを開く（しばらく開きっぱなしです）
　以下のコマンドでバージョンが表示されていればOK
  >python --version
  Python 2.7.9


●作業フォルダを作る（※以下はコマンドラインから実行した場合です）
 > d:
 > mkdir alife  （※作業フォルダは好きな場所に）
 > cd alife


●githubから以下をクローン（※以下はコマンドラインから実行した場合）
 > git clone https://github.com/uei/deel.git
 > git clone https://github.com/wbap/lis.git


●H5pyをインストール
  以下のページを下のほうにスクロールして H5py を探して
   http://www.lfd.uci.edu/~gohlke/pythonlibs/
   "h5py-2.5.0-cp27-none-win_amd64.whl" をダウンロード
　ダウンロードしたファイルを上で作ったフォルダに移動して、
  コマンドラインから
 > pip install h5py-2.5.0-cp27-none-win_amd64.whl
　とするとインストールされます

●必要なpython環境をまとめてインストール
 > cd deel
 > pip install -r requirements.txt

－－－－－－－－－－－－－－－－－－－－－－
※ここでこんなエラーメッセージが出ていたら
－－－－－－－－－－－－－－－－－－－－－－
　cupyうんぬんのコンパイル部分でwarningを沢山吐いている

  C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\include
   \include\cuda_runtime.h
   \include\cuda_runtime_api.h
  -- warning C4819: The file contains ... Save the file in Unicode format to prevent data loss

　「unicodeで保存し直せ」と言われています
　でもたしかこの２つのヘッダファイルが unicodeで保存されているせいでエラーを起こしていた遠い記憶があるなぁ…
　自分は秀丸エディタで開いて shift-jisで保存しなおしたら Warningは出なくなりました（あるあるなのかな）


● matplotlib も必要みたいです
 > pip install matplotlib


●以上でこうなりました
 > pip list
 chainer (1.7.1)
 chainer-libdnn (2.1.0)
 CherryPy (5.1.0)
 cycler (0.10.0)
 Cython (0.24)
 decorator (4.0.9)
 filelock (2.0.5)
 h5py (2.5.0)
 matplotlib (1.5.1)
 msgpack-python (0.4.7)
 nose (1.3.7)
 numpy (1.11.0)
 Pillow (3.2.0)
 pip (1.5.6)
 protobuf (2.6.1)
 pyparsing (2.1.1)
 python-dateutil (2.5.2)
 pytz (2016.3)
 setuptools (7.0)
 six (1.10.0)
 ws4py (0.3.4)


●Unity 5.1.0f3 をダウンロードしてインストール
  
  サンプルプロジェクトは Unity 5.1.0f3 で作ってあるので、無用なトラブルを避けるならインストールしておくと良いのではないでしょうか
  https://unity3d.com/jp/get-unity/download/archive
　上記のリンク先の Unity 5.1.0 のところからダウンロード



これで準備が整ったかどうか、あまり自身がありませんが…