Compilation error while trying to build ROOT via source with GPU enabled


Hello,

I am attempting to build the latest stable version of ROOT from source with GPU support enabled but I am encountering a compilation error.

Environment:

  • OS: Ubuntu 22.04

  • Compiler: GNU 11.4.0

  • Hardware: 2x NVIDIA RTX 4500 Ada Generation

  • CUDA: 12.6 (Toolkit installed in /usr/local/cuda-12.6)

  • ROOT Version: 6.40.02 (Latest stable version - cloned via git)

Configuration:

I am using the following CMake flags

cmake -DCMAKE_INSTALL_PREFIX=../root_install \ -DCMAKE_CUDA_COMPILER=/usr/local/cuda-12.6/bin/nvcc \ -DCMAKE_CUDA_ARCHITECTURES=89 \ -Dcuda=ON \ -Dtmva-gpu=ON \ -DCMAKE_CXX_STANDARD=17 \ -DCMAKE_CUDA_STANDARD=17 \ -Dbuiltin_gl2ps=ON \ -Dbuiltin_ftgl=ON \ ../root_src

```

The Issue:

When running cmake --build . -- install -j24, the build consistently fails at ~66% with the following error:

In file included from input_line_7:10: .../root_build/include/MPSendRecv.h:18:10: remark: building module 'Net' as '.../root_build/lib/Net.pcm' [-Rmodule-build] #include "TSocket.h" ^ Error: Building module 'Net' implicitly. If 'Net' requires a dictionary please specify build dependency: 'G__MultiProc.cxx' depends on 'Net'.

```

Is there a known dependency order issue here, or should I be defining specific build targets to force the order?

Any advice would be appreciated.