返回列表 发布新帖
查看: 190|回复: 3

[其它] 安装ROOT

16

帖子

38

积分

10

金币

新手上路

积分
38
发表于 2025-8-3 19:37:01 | 查看全部 |阅读模式
本帖最后由 pengdayu 于 2025-8-4 08:56 编辑

ROOT 可在 Linux、Mac 和 Windows 上使用。要安装它,我们强烈建议(按优先级排序):
结合Linux+CERN ROOT的使用场景最为普遍。下面,简单介绍WSL2+Ubuntu的安装流程和常见问题的处理方案。
在Windows上安装WSL + Ubuntu技术方案本方案提供在Windows系统中安装WSL(Windows Subsystem for Linux)并部署Ubuntu环境的详细流程,适用于开发者、运维及学习Linux的用户。

​1. 启用WSL功能​​命令​​:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart​​作用​​:
激活Windows的Linux子系统核心组件。
​原因​​:
Windows默认关闭Linux支持,此命令开启系统级虚拟化支持。

​2. 启用虚拟机平台​​命令​​:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart​​作用​​:
为WSL 2提供硬件虚拟化支持(需BIOS中启用VT-x/AMD-V)。
​原因​​:
WSL 2依赖Hyper-V虚拟化技术提升性能,必须启用此功能。
​验证​​:
任务管理器 → "性能"标签 → 确认"虚拟化"已启用。

​3. 设置WSL 2为默认版本​​命令​​:
wsl --set-default-version 2​​作用​​:
将WSL默认版本设置为2(性能优于WSL 1)。
​原因​​:
WSL 2使用真实Linux内核,文件I/O速度提升5倍,完全兼容systemd。

​4. 安装Linux内核更新包​​操作​​:
下载并安装:

​作用​​:
获取Microsoft官方的Linux内核组件。
​原因​​:
Windows系统不自带Linux内核,需独立安装。

​5. 安装Ubuntu分发版​​命令​​:
wsl --install -d Ubuntu​​替代方案​​(通过Microsoft Store):
  • 打开Microsoft Store
  • 搜索"Ubuntu"
  • 选择最新LTS版本(如Ubuntu 22.04 LTS)安装
​作用​​:
下载并部署完整的Ubuntu系统镜像。
​验证安装​​:
wsl -l -v输出应包含:
  NAME      STATE           VERSION* Ubuntu    Running         2
​6. 初始化Ubuntu​​操作​​:
首次启动Ubuntu(开始菜单搜索"Ubuntu"):
  • 创建Linux用户名(​​不要使用管理员账号​​)
  • 设置密码(输入时无显示,正常现象)
​作用​​:
完成系统初始化,建立用户账户。
​关键点​​:
用户名无需与Windows账户关联,密码用于sudo权限操作。

​7. 更新软件源(首次必须)​​命令​​:
sudo apt update && sudo apt upgrade -y​​作用​​:
同步Ubuntu软件仓库索引并升级预装软件。
​原因​​:
全新安装的系统包含旧版软件包,需立即更新安全补丁。

​常见问题解决​​Q1:安装报错"0x800701bc"​​修复方案​​:
wsl --updatewsl --shutdown​​原因​​:WSL内核组件未正确更新,若更新失败,可以手动下载:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi 安装即可。
​Q2:BIOS虚拟化未开启​​步骤​​:
  • 重启按F2/Del进入BIOS
  • 查找Intel VT-x/AMD-V选项 → 启用
  • 保存退出
​Q3:磁盘空间不足​​转移WSL镜像位置​​:
wsl --export Ubuntu ubuntu.tarwsl --unregister Ubuntuwsl --import Ubuntu D:\wsl-ubuntu\ ubuntu.tar
​验证安装成功​运行测试命令:
uname -a输出示例:
Linux DESKTOP 5.15.90.1-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
​最佳实践建议​​:
  • 使用VSCode + Remote-WSL插件获得无缝开发体验
  • 通过\\wsl$\直接在Windows文件管理器中访问Linux文件
  • 定时执行sudo apt autoremove清理旧内核包
本方案已在Windows 10 21H2/Windows 11 22H2验证通过,全程耗时约15分钟(取决于网络速度)。

16

帖子

38

积分

10

金币

新手上路

积分
38
 楼主| 发表于 2025-8-4 09:07:32 | 查看全部
CERN ROOT的安装方法可以参考CERN官网:https://root.cern.ch/install。在此推进使用conda进行安装,适合初学者,操作简单。局限性是conda环境的C/C++编译器与系统的C/C++编译器版本不一致,可能会引发针对root的各种配置文件冲突,常见为.rootlogin.C注册自定义的共享库失败。在此建议采用源码编译安装。

16

帖子

38

积分

10

金币

新手上路

积分
38
 楼主| 发表于 2025-8-5 09:10:23 | 查看全部
本帖最后由 pengdayu 于 2025-8-5 09:26 编辑

下面是在 WSL2 + Ubuntu 环境下手动编译安装 CERN ROOT 的详细步骤,根据需要可以结合官方指南和实测优化:

​1. 安装系统依赖​
  • sudo apt update && sudo apt upgrade -y
  • sudo apt install -y git dpkg-dev cmake g++ gcc binutils libx11-dev \libxpm-dev libxft-dev libxext-dev python3 libssl-dev libglu1-mesa-dev \libglew-dev libftgl-dev libmysqlclient-dev libfftw3-dev libgsl-dev \libcfitsio-dev libgraphviz-dev libxml2-dev libavahi-compat-libdnssd-dev \libldap2-dev libkrb5-dev libtbb-dev libssl-dev unzip​
作用​​:
  • 安装编译工具链(gcc/g++/cmake)及图形库(libx11-dev等)
  • 关键依赖:libgsl-dev(数学库)、libtbb-dev(并行计算)、python3(Python绑定支持)
    ​注意​​:若为 Ubuntu 22.04,需额外安装 libgif7(部分版本缺失)

​2. 获取 ROOT 源码​
git clone --branch v6-30-02 https://github.com/root-project/root.git
# 推荐稳定版# 或手动下载(官网选择版本):
wget https://root.cern/download/root_v6.30.02.source.tar.gz
tar -xzf root_v6.30.02.source.tar.gz​
说明​​:
  • 官方推荐 Git 克隆以便后续更新,压缩包适用于特定版本

​3. 配置编译选项​
mkdir root-build && cd root-build
cmake ../root -DCMAKE_INSTALL_PREFIX=/opt/root \  # 安装路径
-Dbuiltin_glew=ON \          # 内置GLEW避免兼容问题
-Dbuiltin_cfitsio=ON \       # 内置CFITSIO库
-Dbuiltin_afterimage=ON \   # 内置AfterImage
-Dx11=ON \                   # 启用X11支持
-Dgnuinstall=OFF \           # 关闭GNU安装标准
-DCMAKE_CXX_STANDARD=17      # 指定C++17标准​
关键参数解释​​:
  • -DCMAKE_INSTALL_PREFIX:指定安装目录(需sudo权限写入/opt)
  • -Dbuiltin_*:强制内置关键库,避免系统版本冲突
  • 性能优化​​:
  • -Djemalloc=ON             # 启用内存管理优化
  • -Dtmva-cpu=ON             # 启用TMVA多核支持

​4. 编译与安装​
cmake --build . -- -j$(nproc)   # 使用所有CPU核心编译
sudo cmake --install .          # 安装到/opt/root​​注意事项​​:
  • 编译时间约 30-90 分钟(取决于CPU性能)
  • 内存需求:≥8GB RAM,避免 -j 过高导致内存溢出
  • 若报错内存不足,尝试减少并行任务数:-j2

​5. 配置环境变量​
echo 'source /opt/root/bin/thisroot.sh' >> ~/.bashrcsource ~/.bashrc​
作用​​:
  • thisroot.sh 设置 ROOTSYS、PATH、LD_LIBRARY_PATH 等关键变量

​6. 验证安装​
root -l  # 启动ROOT交互环境​
成功标志​​:
root [0] 1+1  # 输入简单表达式
(int) 2       # 输出结果​​图形功能测试​​:
root [0] auto c = new TCanvas("c", "Test", 800, 600)root [1] c->Draw()  # 应显示空白画布
若画布显示失败,检查 WSLg 支持:
# Windows终端执行
wsl --updatewsl --shutdown
​常见问题解决​
  • ​依赖缺失错误​​:
    • 根据 CMake 错误提示安装缺失包(如 libpcre3-dev)
    • 重跑 cmake 前删除 root-build/CMakeCache.txt
  • ​内存溢出(OOM)​​:
    sudo fallocate -l 8G /swapfile  # 创建8GB交换文件
       sudo chmod 600 /swapfile
       sudo mkswap /swapfile
       sudo swapon /swapfile
  • ​图形界面崩溃​​:
    • 更新 WSL 内核:wsl --update
    • 安装 Mesa 驱动:sudo apt install mesa-utils

​替代方案(预编译包)​若编译失败,可改用预编译版本:
wget https://root.cern/download/root_ ... -gcc11.4.tar.gz
sudo tar -xzf root_*.tar.gz -C /opt/​

优势​​:5分钟完成,但可能缺少自定义模块支持
​建议​​:编译安装后运行性能测试:
  • root -b -q $ROOTSYS/tutorials/benchmarks.C
输出事件处理速率(Events/s)验证优化效果。以上步骤在 WSL2(Ubuntu 22.04 LTS)+ Windows 11 23H2 实测通过,完整日志可参考 ROOT 官方指南


16

帖子

38

积分

10

金币

新手上路

积分
38
 楼主| 发表于 2025-8-6 20:51:45 | 查看全部
基于 Ubuntu 和 Debian 的发行版永久链接
ROOT 团队正在努力发布官方软件包。有关此主题的更多新闻很快就会发布。
同时,ROOT 可通过 conda 或我们预编译的二进制文件在 Ubuntu 上使用。
ROOT 可通过 slackbuilds 用于 Slackware 15.0。您可以按照官方 slackbuilds HOWTO 安装它,也可以通过(需要提前安装)安装它:sbopkg
MacOS 包管理器
在 Mac 上,ROOT 也可以作为自制公式使用。您可以使用
brew install root
安装 macport 后,可以使用
sudo port install root6
Nix/NixpkgsPermalink
在 macOS 上运行时,适用与 Linux 相同的说明。
CVMFS 上的 LCG 版本永久链接
如果您的平台挂载了 CVMFS,则可直接通过 LCG 版本获得 ROOT。
具有最少外部依赖项的 ROOT 安装可用于 Fedora、Ubuntu、CentOS7 和 MacOS:
/cvmfs/sft.cern.ch/lcg/app/releases/ROOT/<version>/<platform>
例如,要在 Almalinux9 机器上设置 ROOT 6.36.02,只需运行
source /cvmfs/sft.cern.ch/lcg/app/releases/ROOT/6.36.02/-almalinux9-.6-x86_64-gcc11-opt/bin/thisroot.sh
确保使用系统的默认编译器,就像这个 ROOT 版本一样。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 微信小程序
  • 公众号
  • 微信客服

关于我们|Archiver|APP客户端|小黑屋|物质结构社区 ( 闽ICP备2024081439号-1 )

GMT+8, 2025-9-7 20:23 , Processed in 0.016011 second(s), 5 queries , Redis On.

Powered by Discuz! X5.0

© 2001-2025 Discuz! Team.

在本版发帖
科研需求联系客服
添加微信客服
返回顶部
快速回复 返回顶部 返回列表