物理の駅 by onsanai

Physics-station 研究で日々感じたことを忘れないための備忘録

Windows 10でC++とpythonでROOT6 (CERN)を動かそう

最終更新: 2018/10/29

Windows用のROOT6はプレビュー版がリリースされています。これは、Visual Studio 2017が必須です。無料のCommunity版でも良い。しかし、Visual StudioC++コンパイラーのバグにより、現状プレビュー版ROOT6用は正常に動きません。

Assertion failed occurred when executing compiled exe with Visual Studio 2017 - ROOT - ROOT Forum

バグレポートとbellenot氏の返答を参照。

現状、Windowsで仮想環境なしにROOT6を動かす方法は、WSL(Windows Subsystem for Linux)のみです。

  • WSL (Windows Subsystem for Linux) で、Ubuntuの最新版を入れる (18.04 LTS)
  • ROOT 6が必要とするパッケージ類をインストールする
  • Ubuntu用のビルド済み ROOT 6をインストールする
  • Windows用のXサーバー「Xming」をインストールする

上記の方法は、それぞれ日本語でもかなりの記述がネットで見つかるので、慣れた方ならできるかと思います。

ROOTのインストール方法の日本語訳

Downloading ROOT | ROOT a Data analysis Framework

僕の流儀はZIPからインストールなのでそちらだけ。

伝統的な変種(筆者注: 変種ってどう訳すの?)。7zip(筆者注: おすすめなので入れておくべし)などで解凍する。ROOTはMicrosoft Visual Studioコマンドプロンプト(スタートメニューのプログラムのVisual Studio 2017 VS 2017 用)から始める。ROOTを C:\root にインストールしたとき、ROOTを使う前に必要な環境変数をセットアップするために C:\root\bin\thisroot.bat を実行せよ。

重要なインストール手法

  • システムにインストールされたのと完全に同じバージョンのVisual Studioでビルドされた(筆者注: 今回はVS2017)バイナリをダウンロードする必要がある。
  • ブランク文字を含む(筆者注: 日本語のパスを含む)ディレクトリにZIPを解凍してはならない。
  • パフォーマンスが重要な場合(筆者注: 基本的に必要である)は、リリース版を入手せよ。
  • コードをデバッグ(筆者注: ここでのデバッグは、ROOTそのもののデバッグを意味する。コードがコンパイルできないなどの問題の多くは、ROOTではなく君が書いたコードにバグがある)する場合、ROOTのデバッグ用ビルドが必要。マイクロソフトの制限のため、リリース版とデバッグ版を混在はできない。