Skip to content

Installation issue: pmdk +ndctl (missing dep on libndctl and libdaxctl) #6615

Description

@payerle

Steps to reproduce the issue

This is the final of three distinct issues I encountered trying to build pmdk (the first two being reported in #6613 and #6614). The spec I am trying to install is:

$ spack --env myenv find -lvfcdI pmdk
...
-- linux-rhel8-zen2 / %c,cxx=gcc@13.4.0 -------------------------
 -   4vpzryv pmdk@1.12.1+doc+experimental+ndctl+rpmem build_system=generic
[+]  komdk4j     cmake@3.31.9~doc+ncurses+ownlibs~qtgui build_system=generic build_type=RelWithDebInfo
[+]  5iwsjnc         curl@8.15.0+gssapi~ldap+libidn2~librtmp~libssh+libssh2+nghttp2 build_system=autotools libs:=shared,static tls:=mbedtls,openssl
[+]  vjvgdcm             krb5@1.21.3+shared build_system=autotools
[+]  l22ndgk                 bison@3.8.2~color build_system=autotools
[+]  aveg6xi                 diffutils@3.12 build_system=autotools
[+]  xfwlwc5                     libiconv@1.18 build_system=autotools libs:=shared,static
[+]  rcuuwdi                 findutils@4.10.0 build_system=autotools patches:=440b954
[+]  un24op4                 gettext@0.23.1+bzip2+curses+git+libunistring+libxml2+pic+shared+tar+xz build_system=autotools
[+]  ji2noye                     libxml2@2.13.5+http+pic~python+shared build_system=autotools
[+]  ac3qlxk                     tar@1.35 build_system=autotools zip=pigz
[+]  xdqbnzg                         pigz@2.8 build_system=makefile
[+]  pi6zcmw                         zstd@1.5.7+programs build_system=makefile compression:=lz4,lzma,zlib libs:=shared,static
[+]  rv4gmuf                             lz4@1.10.0+pic build_system=makefile libs:=shared,static
[+]  p2qbo6v                 libedit@3.1-20240808 build_system=autotools
[+]  cwtascr             libidn2@2.3.7 build_system=autotools
[+]  2xh2w6v                 libunistring@1.2 build_system=autotools
[+]  34m2usx             libssh2@1.11.1+shared build_system=autotools crypto=mbedtls
[+]  dozx2ei                 xz@5.6.3+pic build_system=autotools libs:=shared,static
[+]  yjg7uxr             mbedtls@2.28.9+pic build_system=makefile build_type=RelWithDebInfo libs:=shared,static
[+]  wgsyfrl             nghttp2@1.67.1 build_system=autotools
[+]  yfj7zom             openssl@3.6.0~docs+shared build_system=generic certs=system
[+]  zgiqg7h             perl@5.42.0+cpanm+opcode+open+shared+threads build_system=generic
[+]  kddwxvy                 berkeley-db@18.1.40+cxx+docs+stl build_system=autotools patches:=26090f4
[+]  clcmbca                 bzip2@1.0.8~debug+pic+shared build_system=generic
[+]  x7mvisw                 gdbm@1.25 build_system=autotools
[+]  yyfhywn         zlib@1.3.1+optimize+pic+shared build_system=makefile
[+]  c4lvqa5     compiler-wrapper@1.0 build_system=generic
[e]  lxilqo6     gcc@13.4.0+binutils~bootstrap+graphite~mold+nvptx~piclibs~strip build_system=autotools build_type=RelWithDebInfo languages:='c,c++,fortran,lto'
[+]  6veby57     gcc-runtime@13.4.0 build_system=generic
[e]  wklw66w     glibc@2.28 build_system=autotools
[+]  qphn4tr     gmake@4.4.1~guile build_system=generic
[+]  m5gdybd     libfabric@1.22.0~cuda~debug~kdreg~level_zero~rocm+uring build_system=autotools fabrics:=shm,sockets,tcp,udp,verbs
[+]  3tzcpt5         liburing@2.12 build_system=autotools
[+]  7vemvfo         rdma-core@59.0+ipo~man_pages+pyverbs+static build_system=cmake build_type=RelWithDebInfo generator=make
[+]  el4iobu             libnl@3.3.0 build_system=autotools
[+]  fovoc5z                 flex@2.6.4+lex+nls build_system=autotools patches:=f8b85a0
[+]  gbt55l4                     autoconf@2.72 build_system=autotools
[+]  spxl244                     automake@1.16.5 build_system=autotools
[+]  nau4id2                     help2man@1.49.3 build_system=autotools
[+]  v2bnibg                     libtool@2.4.7 build_system=autotools
[+]  dp2hpm5                 m4@1.4.20+sigsegv build_system=autotools
[+]  okijcpw                     libsigsegv@2.14 build_system=autotools
[+]  ddhtjqi             py-cython@3.1.3 build_system=python_pip
[+]  iij36rk                 py-pip@25.1.1 build_system=generic
[+]  c4bjnug                 py-setuptools@80.9.0 build_system=generic
[+]  2af64e5                 py-wheel@0.45.1 build_system=generic
[+]  a2dwrpm             python@3.12.12+bz2+crypt+ctypes+dbm~debug+libxml2+lzma+optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic
[+]  6xvipxp                 expat@2.7.3+libbsd build_system=autotools
[+]  eupcdsq                     libbsd@0.12.2 build_system=autotools
[+]  4t7s7tj                         libmd@1.1.0 build_system=autotools
[+]  e3mylxq                 libffi@3.5.2 build_system=autotools
[+]  e2mxkgo                 libxcrypt@4.4.38~obsolete_api build_system=autotools
[+]  xnkg5zv                 readline@8.3 build_system=autotools patches:=21f0a03
[+]  g6dfwgz                 sqlite@3.50.4+column_metadata+fts+rtree build_system=autotools
[+]  54axnim                 util-linux-uuid@2.41 build_system=autotools
[+]  dr6yyre             python-venv@1.0 build_system=generic
[+]  4fr2zga     ncurses@6.5-20250705+symlinks+termlib abi=5 build_system=autotools patches:=7a351bc
[+]  hn2krca     pkgconf@2.5.1 build_system=autotools

Concretization succeeds, but on "spack install" I get a complaint about installing libndctl-dev or similar.

Error message

Error message
==> Using cached archive: /afs/shell.umd.edu/software/spack/cache/swinst26/_source-cache/archive/53/53602e4c2439957046b428187665c5ff38cb90ca50956eb917b509a2e96909a3.tar.gz
==> No patches needed for pmdk
==> pmdk: Executing phase: 'install'
==> [2026-09-18-19:46:55.352407] /cvmfs/hpcsw.umd.edu/spack-software/2025.11.0/linux-zen2/gmake-4.4.1-qphn4trlvavuqomjvmldjzyey3zoqdkt/bin/make install prefix=/cvmfs/hpcsw.umd.edu/spack-software/2025.11.0/linux-zen2/pmdk-1.12.1-4vpzryvpyusa4rujbjplxw7kov56wihk EXTRA_CFLAGS=-Wno-error NDCTL_ENABLE=y BUILD_RPMEM=y DOC=y EXPERIMENTAL=y ARCH=x86_64
src/common.inc:379: *** Please install libndctl-dev/libndctl-devel/ndctl-devel >= 63.  Stop.
Command exited with status 2:
    /cvmfs/hpcsw.umd.edu/spack-software/2025.11.0/linux-zen2/gmake-4.4.1-qphn4trlvavuqomjvmldjzyey3zoqdkt/bin/make install prefix=/cvmfs/hpcsw.umd.edu/spack-software/2025.11.0/linux-zen2/pmdk-1.12.1-4vpzryvpyusa4rujbjplxw7kov56wihk EXTRA_CFLAGS=-Wno-error NDCTL_ENABLE=y BUILD_RPMEM=y DOC=y EXPERIMENTAL=y ARCH=x86_64

This indicates a dependency on libndctl. Furthermore, https://github.com/pmem/pmdk/blob/master/INSTALL.md suggests a dependency on both libndctl and libdaxctl unless NDCTL_ENABLE=n (i.e. ~ndctl variant in spack). As neither libndctl nor libdaxctl appear to currently be available in Spack, the +ndctl option should not be allowed for now.

Information on your system

$ spack debug report
* **Spack:** 1.2.0.dev0
* **Builtin repo:** https://github.com/spack/spack-packages/commit/119680aeee8ea802c6111b7167583bddef97e82f
* **Python:** 3.6.8
* **Platform:** linux-rhel8-zen2


### Additional information

maintainer: @hyoklee

Files:
- [Full spec (spack find) output](https://github.com/user-attachments/files/32528957/findc.pmdk.%2Bndctl.txt)
- [spack-build-env.txt](https://github.com/user-attachments/files/32528973/spack-build-env.txt)
- [spack-build-env-mods.txt](https://github.com/user-attachments/files/32528974/spack-build-env-mods.txt)
- [spack-build-out.txt](https://github.com/user-attachments/files/32528972/spack-build-out.txt)

The other pmdk issues in this set are #6613, #6614

### General information

- [x] I have run `spack debug report` and reported the version of Spack/Python/Platform
- [x] I have run `spack maintainers <name-of-the-package>` and **@mentioned** any maintainers
- [x] I have uploaded the build log and environment files
- [x] I have searched the issues of this repo and believe this is not a duplicate
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions