
WSL 核物理工具链安装提示词脱敏可复用版请作为一名熟悉 Linux、WSL2、CMake、GTK/Qt 和核物理数据分析软件的系统工程师帮助我在一台全新的 WSL2 Ubuntu 环境中安装并配置以下四套软件CERN ROOTGeant4简称 G4RadwareGASPware目标是安装完成后我只需打开 WSL Ubuntu 终端就能直接使用这四套软件及其命令不需要每次手动重新配置环境。环境与原则先检查实际发行版、版本、架构、WSL1/WSL2、用户名、CPU、内存、磁盘、网络、sudo 权限和 WSLg 状态不要猜测环境。默认支持 Ubuntu 20.04 LTS amd64如果发行版或架构不同先说明兼容性并给出对应调整。所有用户态软件默认安装到$HOME/opt/physics/不要修改 Windows PATH、Windows Python 或其他 WSL 发行版。不要把源码、构建目录和大压缩包放在/mnt/c等 Windows 挂载盘优先使用 WSL 的 Linux 文件系统。不要读取、复制、上传或输出任何密码、token、SSH 私钥、云凭据或原有 shell 配置中的敏感内容。修改~/.bashrc、~/.profile前先做安全备份或使用只追加的、带明确标记的区块不要覆盖用户原有配置。所有下载都使用 HTTPS固定版本时记录 URL、版本、提交号和 SHA256校验失败必须停止不得继续解压或编译。任何递归删除前都要解析并确认目标是本次安装专用的临时目录不能删除$HOME、工作区根目录或未知目录。遇到需要密码、图形授权、网络代理或用户选择时明确说明并暂停不要把秘密写进命令行或日志。版本与安装策略ROOT优先使用 ROOT 官方针对 Ubuntu 20.04 amd64 的预编译二进制包不要无理由从源码重新编译 ROOT。当前可用的兼容版本基线为 ROOT6.34.08https://github.com/root-project/root/releases/download/v6-34-08/root_v6.34.08.Linux-ubuntu20.04-x86_64-gcc9.4.tar.gz SHA256: 2df9d5d9c68f62efbccfa20959064a39435aaa02301f81d69e4042f6fb2b9c66解压后的最终目录应为$HOME/opt/physics/root-6.34.08/使用官方bin/thisroot.sh配置环境。验证root-config --version、root -b -q和 PyROOT 导入。检查二进制使用的 Python ABI不要把不匹配的系统 Python 强行混用。Geant4先检查官方发布页是否有与当前 Ubuntu/GCC/glibc 兼容的二进制如果没有使用源码构建。对 Ubuntu 20.04 amd64默认采用 Geant411.2.2源码https://gitlab.cern.ch/geant4/geant4/-/archive/v11.2.2/geant4-v11.2.2.tar.gz SHA256: 3a8d98c63fc52578f6ebf166d7dffaec36256a186d57f2520c39790367700c8d使用系统 GCC 9、CMake 和 NinjaC17安装前缀$HOME/opt/physics/geant4-11.2.2/默认启用GEANT4_BUILD_MULTITHREADEDON GEANT4_USE_GDMLON GEANT4_USE_QTON GEANT4_USE_QT_QT6OFF GEANT4_USE_OPENGL_X11ON GEANT4_USE_RAYTRACER_X11ON GEANT4_INSTALL_DATAON GEANT4_INSTALL_EXAMPLESON GEANT4_INSTALL_DATASETS_TENDLOFF安装官方标准数据集并确认每个数据目录真实存在。使用安装后的bin/geant4.sh如果官方脚本把单独的数据变量留作注释就在统一环境脚本中显式导出它们。编译并运行 Basic/B1 示例验证库、CMake 配置和物理数据都可用。Radware使用官方仓库https://github.com/radforddc/rw05.git默认固定到已验证的提交如果改用更新提交必须先记录并验证具体 commitfc0b431e5d8146095c054b4a2babd491d4130448源码在临时 staging 目录编译最终安装到$HOME/opt/physics/radware/使用 Linux Makefile先构建核心目标make -f Makefile.linux ... all再单独构建 GTK2 目标make -f Makefile.linux ... gtk必须检查并安装这些 GUI 程序gtkgls gtkesc gtklev gtk4dg不能把“make all成功”误认为 GTK 程序已安装Radware 的 GTK 目标是独立的。配置并验证RADWARE_HOME RADWARE_FONT_LOC RADWARE_ICC_LOC RADWARE_GFONLINE_LOC默认不启用需要 ORPHLIB 的.his文件支持除非用户明确提供 ORPHLIB。保留 Radware 的bin、font、icc、doc、demo和 shell 配置文件。说明正确的文件类型gf3 一维谱分析 escl8r 二维 Ge-Ge 数据 levit8r 3D cube通常使用 .lev 描述文件 4dg8r 4D hypercube通常使用 .4dg 描述文件GASPware使用官方仓库https://github.com/pgramage/gaspware.git默认固定到已验证的提交43c40f4340b771c90d25752cb298f59d1bb5dd37在 amd64 WSL 中使用GASPware_64bit不要误用 32 位目录$HOME/opt/physics/gaspware/GASPware_64bit/配置GASPWARE_HOME$HOME/opt/physics/gaspware/GASPware_64bit GSDIR$GASPWARE_HOME/etc将bin加入 PATH并确认cmat、xtrackn是 x86-64 ELF 且ldd没有not found。保留并集中复制说明书到$HOME/opt/physics/gaspware/docs/至少包括cmat.tex trackn.pdf trackn.tex ReadMe-CMAT.txt ReadMe-XTRACKN.txt依赖、图形和环境配置使用发行版包管理器安装实际需要的 GCC/G/GFortran、CMake、Ninja、Git、Python3、Numpy、readline、GTK2、Qt5、X11、OpenGL、Xerces-C、GDML 和常用 ROOT 依赖。安装前先确认软件包名称在当前发行版仓库存在不要盲目复制其他 Ubuntu 版本的包名。如果 WSLg 存在并提供DISPLAY/WAYLAND_DISPLAY启用并测试 GUI不要硬编码一个不存在的显示服务器。生成统一脚本$HOME/opt/physics/physics-env.sh该脚本应按正确顺序 sourcegeant4-11.2.2/bin/geant4.sh root-6.34.08/bin/thisroot.sh radware/.radware.bashrc统一设置并导出 ROOT、Geant4、Radware、GASPware 的路径、库路径、CMake 路径和 Geant4 数据变量。脚本必须幂等重复 source 不应无限重复 PATH 或 LD_LIBRARY_PATH。可以使用 sentinel但要允许用户在明确执行unset后重新初始化。在~/.bashrc和需要时~/.profile追加带标记的 source 区块使以下场景都能工作新开的交互式 WSL shell bash -lc ...不要覆盖用户已有的 aliases、函数、PATH 或代理配置。最终目录安装成功后只保留运行所需目录和记录文件源码、构建、下载、测试中间文件放在专用临时目录验证成功后删除$HOME/opt/physics/ ├── root-6.34.08/ ├── geant4-11.2.2/ ├── radware/ ├── gaspware/ │ ├── GASPware_64bit/ │ └── docs/ ├── physics-env.sh └── INSTALL-MANIFEST.txt临时目录应类似$HOME/.cache/physics-install-XXXXXX/失败时保留临时目录和日志并报告路径成功后才删除。必须执行的验收在一个全新的 WSL shell 中验证command-vroot root-config geant4-config gf3 gls gtkgls gtkesc gtklev gtk4dg cmat xtrackn root-config--versiongeant4-config--versionpython3-cimport ROOT; print(ROOT.gROOT.GetVersion())还必须完成ROOTroot -b -q启动测试PyROOT 导入测试Geant4 Basic/B1 配置、编译和批处理运行所有标准 Geant4 数据集目录检查Radware/GASPware 全部目标的ldd缺库扫描file cmat xtrackn gtklev gtk4dg的架构检查WSLg 存在时执行glxinfo -B实际启动gtklev和gtk4dg确认能创建窗口关闭并重新打开 WSL 后再次执行命令查找。如果某个 GUI 程序能创建窗口但打不开数据不要直接归因于 GTK继续检查输入文件类型、描述文件引用的数据文件路径、字节序和 Radware 文件格式。交付内容完成后请用简洁报告说明每个软件的版本、来源和安装路径ROOT 是官方预编译二进制还是本地源码构建Geant4 的编译选项和已安装数据集Radware 的核心和 GTK 目标是否都已生成GASPware 的GSDIR和说明书位置修改了哪些 shell 配置文件哪些验收通过、哪些功能因兼容性或缺少外部数据未启用临时目录是否已清理。不要在报告中输出用户名、主机名、IP、token、密码、私钥或原有配置中的敏感内容。