Files
leonarski_f dd67cffde6 Docs: bring the release notes and the rugnux page up to rc.164
The changelog section had grown to 22 entries written from the commits
rather than for a user. Collapsed to 13, each saying what is gained
before what changed, with related work merged - the six anisotropy
entries into one, five space-group entries into two, five
integration-radius entries into one - and four things added that had no
entry at all: the packaging split, the statically linked cuFFT, the Ceres
back-end drop and REPORT_VERSION reaching 3.

CPU_DATA_ANALYSIS gains 9.5, the adaptive integration radius: the r80
measurement, the clamp, the constant-ring-area r3, the convergence test,
why it applies to the final pass only and the density fallback. Three
passages there had gone stale against the code: 13.1 still described the
I/sigma quantile fallback that b90fcfb98 deleted, and 13.5 said the gate
tests delta_B when it tests delta_B_linear and that the high-symmetry
caution fires wherever the Laue class leaves one free direction, which
0da593b32 narrowed.

RUGNUX gains an Installation section - there was no page anywhere saying
where rugnux comes from - a synopsis, a worked first run naming the files
that actually appear and the report keys to grep, and sections on the
unmerged export and on diffraction anisotropy. Its report section list
was one section behind: anisotropy is 9, warnings is 10.

The packaging change reached further than the changelog implied, so the
pages describing what a release ships were corrected too: the viewer
tarball no longer carries rugnux or the two developer utilities, the
Linux archives link cuFFT statically rather than shipping it beside the
binary under an $ORIGIN rpath, the aarch64 archive has a higher glibc
floor than the RHEL 8 ones and is untested on hardware, the archives
unpack with no top-level directory, and the notices live per package
under share/doc/jfjoch_<component>. The RHEL 9.5 vm_flags workaround in
FPGA_PCIE_DRIVER is obsolete and now says so.
2026-08-26 15:16:02 +02:00

3.0 KiB

Software requirements

Operating system

Recommended operating system is Red Hat Enterprise Linux (RHEL) / Rocky Linux versions 8 or 9. For this operating systems we provide RPMs with pre-built binaries to simplify deployment. On experimental basis we also build repositories for Ubuntu 22.04 and 24.04.

Running Jungfraujoch on Red Hat Enterprise Linux 7 is currently not tested and not recommended, but likely possible with providing some packages from external repositories.

Two programs additionally run on Windows 11: the desktop viewer jfjoch_viewer, shipped as a pre-built installer, and rugnux, the offline analysis CLI, shipped as a .zip. Both can be built from source with Visual Studio 2026 (MSVC) and CUDA 13.3 — the viewer additionally needs Qt 6.11; see jfjoch_viewer ▸ Building from source on Windows. The Windows artefacts bundle the Qt runtime (viewer only) and, on the CUDA builds, the cuFFT DLL, so end users need neither Qt nor a CUDA toolkit installed — only an NVIDIA GPU driver for the GPU path. On Linux the portable archives link CUDA entirely statically and so need nothing but the driver. rugnux is also built for 64-bit Arm Linux (GH200, DGX Spark). The rest of Jungfraujoch is Linux-only and x86-64-only. See Release contents for the CPU baseline and CUDA requirements of each released package.

Software dependencies

Required:

  • C++20 compiler and C++20 standard library; recommended GCC 11+ or clang 14+ (Intel OneAPI, AMD AOCC)
  • CMake version 3.26 or newer + a build tool (GNU make or Ninja)
  • zlib compression library
  • Eigen (header-only linear algebra library), version 3.4.x (the build requests Eigen3 3.4, which Eigen's same-major-version rule does not satisfy with 5.x)

HDF5, libtiff and libjpeg-turbo used to be required system packages; they are now downloaded and built automatically by CMake (see the note below), so they no longer need to be installed.

Optional:

  • CUDA compiler version 12.8 or newer - required for the MX fast feedback indexer and GPU analysis
  • FFTW library - for indexing if GPU/CUDA is absent (also auto-downloaded by CMake)
  • Node.js - to build the frontend
  • Qt version 6 (for jfjoch_viewer)

Many further dependencies (spdlog, Zstandard, HDF5, slsDetectorPackage, libzmq, libtiff, libjpeg-turbo, Ceres, the fast feedback indexer, Catch2, ...) are downloaded automatically by CMake and statically linked; building therefore requires network access on the first configure. zlib and Eigen are the exception — they must be preinstalled (found via find_package); on Windows, where they are not present system-wide, install them into a prefix and point CMAKE_PREFIX_PATH at it (see Building from source on Windows). Others are vendored directly in the source tree. The complete list of third-party components, with copyright holders, licenses and verbatim license texts, is in Third-party software notices and the licenses/ directory.