• Showing Page History #107251

ver4開発

UNIX版第1回開発会議(和倉温泉,2017-2-10~12)

開発言語

  • 要件
    • C++に比べて、開発の敷居が低い
    • 質量分析やプロテオミクスに関するライブラリが充実していること
  • Pythonを用いる
    • JavaとPythonが要件を満たす。初期の学習・導入コストの低いPythonを選定
    • 方針として、「python3.4以降 + Windowsへの導入が容易なライブラリ」を用いて開発する
      • つまり正確には、「UNIX版」ではなく「マルチOS版」の開発
      • 開発者の環境がWindowsという話は秘密だ

GUIライブラリの選定

  • 以下のライブラリについて検討:
ライブラリ継続検討・不採用備考
PyQT不採用ライセンスがGPL
PySide不採用LGPL。Winへの導入に挫折(nmake, cmake, qmakeについてエラーを吐き続け、Shibokenまでたどり着いて死んだ)(Macへの導入は容易)
※脂肪肝を乗り越えると逝けそう
WxPython不採用LGPLライクな独自ライセンス。WinはVisual C++ 2010 が要る(Macは容易に導入可能で、すぐにHello, world!が出た)
※VS2010でビルドされているWindows版Python3.4で動かそうとしたため。2.xは、Microsoft Visual C++ Compiler for Python 2.7を入れればインストールできる、はず。また、 python3.5 からはVS2015でビルドされているので問題は生じない、はず。(Windowsでのpython3系のバイオなりパッケージの利用には 3.5 以降に対応しているかどうかが分岐点になりそう。同じ理由でpython2.7系もWindowsでは避けたほうが良いという印象。参考)
PyGTK不採用GTK2用のバインディング。2011年4月で更新が止まっているので、チェックすらせず
PyGObject不採用LGPL。Winではpython3.4環境で、 source forge のバイナリ・パッケージを利用可能(このパッケージは、wxPython同様にCランタイムのバージョンの関係で、python3.5 以降では動作しないので注意。Anaconda の次バージョンから3.4がサポートされなくなる。また現行版のAnacondaも3.6がデフォルトで有効なので、 conda コマンドで 3.6から3.4に切り替える必要あり。)
Kivy継続検討MITライセンス。Windowsへのインストールはあっさりできた。(逆にMacでは、Mac port のpy35-kivyが依存ライブラリとは指定していない pygameを別途インストールする必要があったので、少し苦労した。)今後優先して検討を進める。