物理の駅 Physics station by 現役研究者

テクノロジーは共有されてこそ栄える

Windows + Visual StudioでCERN ROOT6 64bit版 を動かす (2024年)

最終更新: 2024/02/24

CERNのROOT Release 6.26/04 - 2022-06-07 から Windows用のプリコンパイル済みバイナリが配布されはじめた。当初はバグがありまともに動かなかったと思われるが、執筆時点での最新 Release 6.30.04 - 2024-01-31 は1.5年も経過しそれなりにバグ出しが進んだと期待される。

ROOT6を取り巻く状況

2021年ごろまでは、WindowsではROOTの32bit版しか動かなかったが、64bit対応が進められ、2024年2月時点では、それなりに動く64bit版バイナリが配布されています。

ROOT6のビルド済みバイナリをライブラリとして使う

Windows + Visual Studio (VS)を使って、ROOT6 64bit版をライブラリとして使ってみる。まずは、CERNのサイトからZIPファイルをダウンロードして、任意の場所に展開しておく。以下、Cドライブの直下に展開したとして話をすすめる。つまり、binフォルダは"C:\root_v6.30.04.win64.vc17\root\bin" にある。

基本的な使い方は 最終更新: 2021/10/24 の32bit版の記事と同じである。

  • Visual Studio 2019 Community または Visual Studio 2022 Communityを用意。インストール時にC++によるデスクトップ開発にチェックを入れる。Community版のかわりに、Professional版やEnterprise版でもよい。
  • C++の空のプロジェクトを作成 ここではプロジェクト名をProject1とする。
  • 構成マネージャ (上の方) を Release x64に変更
  • プロジェクトのプロパティページのVC++ディレクトリのインクルードディレクトリにC:\root_v6.30.04.win64.vc17\root\includeを追加
  • リンカーの入力の追加の依存ファイルにC:\root_v6.30.04.win64.vc17\root\lib\*.libを追加
  • PATHにC:\root_v6.30.04.win64.vc17\root\binを追加。VS内で追加するときはデバッグの環境にPATH=C:\root_v6.30.04.win64.vc17\root\bin;%PATH%を追加
  • 構成プロパティの全般のC++言語標準を、ISO C++17標準 (/std:c++17)に変更
  • ソースファイルからC++ファイルを追加
  • C/C++のプリプロセッサのプリプロセッサの定義に、_CRT_SECURE_NO_WARNINGSを追加
  • サンプルコードを C++ と ROOT6版 ガウス分布をフィッティング ($2194393) · Snippets · GitLab からコピペ