diff --git a/playbooks/irv-ml1-r15-r16-sudo.yaml b/playbooks/irv-ml1-r15-r16-sudo.yaml index ca84a00..91473a4 100644 --- a/playbooks/irv-ml1-r15-r16-sudo.yaml +++ b/playbooks/irv-ml1-r15-r16-sudo.yaml @@ -34,6 +34,18 @@ steps: libcurl4-openssl-dev libssl-dev libxml2-dev when: "! command -v Rscript >/dev/null 2>&1" + # gcc/gfortran version mismatch fix. irv-ml1's default `gcc` is gcc-11 + # (deliberate — the CUDA/torch R14 stack pins it), but the only gfortran is + # gfortran-12, whose libgfortran-12-dev puts the unversioned `libgfortran.so` + # ONLY in the gcc-12 dir. R links shared objects with SHLIB_LD=$(CC)=gcc-11 + + # `-lgfortran`, so every Fortran package (quadprog→tseries→soundgen, etc.) + # fails "cannot find -lgfortran". libgfortran-11-dev adds the symlink to the + # gcc-11 dir. Additive — does NOT change the default toolchain. + - name: Ensure the default gcc's Fortran link lib resolves (gcc-11 here) + sudo: true + shell: DEBIAN_FRONTEND=noninteractive apt-get install -y libgfortran-11-dev + when: "! gcc -print-file-name=libgfortran.so | grep -q /" + - name: Pin the Ollama service to the A6000 (UUID) via systemd drop-in sudo: true shell: |