简单的 ROOT 工程

这是使用文件系统,但不使用字典的最小 ROOT 项目示例。

examples/root-usefile/CMakeLists.txt

  1. cmake_minimum_required(VERSION 3.1...3.21)
  2. project(RootUseFileExample LANGUAGES CXX)
  3. find_package(ROOT 6.16 CONFIG REQUIRED)
  4. # Sets up global settings
  5. include("${ROOT_USE_FILE}")
  6. # This is required for ROOT < 6.16
  7. # string(REPLACE "-L " "-L" ROOT_EXE_LINKER_FLAGS "${ROOT_EXE_LINKER_FLAGS}")
  8. # This is required on if there is more than one flag (like on macOS)
  9. separate_arguments(ROOT_EXE_LINKER_FLAGS)
  10. add_executable(RootUseFileExample SimpleExample.cxx)
  11. target_link_libraries(RootUseFileExample PUBLIC ${ROOT_LIBRARIES}
  12. ${ROOT_EXE_LINKER_FLAGS})

examples/root-usefile/SimpleExample.cxx

  1. #include <TLorentzVector.h>
  2. int main() {
  3. TLorentzVector v(1,2,3,4);
  4. v.Print();
  5. return 0;
  6. }