Getting "`LIBNDCTL_18' not found" error while running pmempool command

60 views
Skip to first unread message

Raqib Islam

unread,
Jan 24, 2022, 8:59:31 PM1/24/22
to pmem
Hi All,

I was trying to use the pmempool command for troubleshooting in a PMEM pool file. But, while running the command, getting the following error:

$ pmempool --version
pmempool: /usr/lib/x86_64-linux-gnu/libndctl.so.6: version `LIBNDCTL_18' not found (required by pmempool)
pmempool: /usr/lib/x86_64-linux-gnu/libndctl.so.6: version `LIBNDCTL_18' not found (required by /usr/local/lib64/libpmempool.so.1)
pmempool: /usr/lib/x86_64-linux-gnu/libndctl.so.6: version `LIBNDCTL_18' not found (required by /usr/local/lib64/libpmemblk.so.1)
pmempool: /usr/lib/x86_64-linux-gnu/libndctl.so.6: version `LIBNDCTL_18' not found (required by /usr/local/lib64/libpmemlog.so.1)
pmempool: /usr/lib/x86_64-linux-gnu/libndctl.so.6: version `LIBNDCTL_18' not found (required by /usr/local/lib64/libpmemobj.so.1)

What could be the potential reason for this issue?

- Raqib

steve.s...@gmail.com

unread,
Jan 25, 2022, 10:25:40 AM1/25/22
to pmem
I expect you have a newer version of pmempool and an old version of libndctl. Try updating the libndctl or ndctl-libs package (depends on your Linux distro). Also, check that your LD_LIBRARY_PATH  environment variable is sourcing the correct library version.

You can check your current lib by following the symbolic link, eg:

# ls -l libndctl.so.6
lrwxrwxrwx. 1 root root 18 Dec 31 12:57 libndctl.so.6 -> libndctl.so.6.20.1

Or use readelf

# readelf -a -W libndctl.so.6 | grep LIBNDCTL_18
   340: 0000000000000000     0 OBJECT  GLOBAL DEFAULT  ABS LIBNDCTL_18
   426: 0000000000013e20     8 FUNC    GLOBAL DEFAULT   13 ndctl_dimm_get_dirty_shutdown@@LIBNDCTL_18
   443: 000000000001ac60     9 FUNC    GLOBAL DEFAULT   13 ndctl_namespace_get_next_badblock@@LIBNDCTL_18
   467: 000000000001da80   438 FUNC    GLOBAL DEFAULT   13 ndctl_namespace_get_first_badblock@@LIBNDCTL_18
   478: 0000000000000000     0 OBJECT  GLOBAL DEFAULT  ABS LIBNDCTL_18
  154:   9 (LIBNDCTL_18)   a (LIBNDCTL_19)   3 (LIBNDCTL_3)    3 (LIBNDCTL_3)
  1a8:   3 (LIBNDCTL_3)    3 (LIBNDCTL_3)    9 (LIBNDCTL_18)   3 (LIBNDCTL_3)
  1b8:   7 (LIBNDCTL_16)   3 (LIBNDCTL_3)    4 (LIBNDCTL_13)   9 (LIBNDCTL_18)
  1d0:   3 (LIBNDCTL_3)    3 (LIBNDCTL_3)    3 (LIBNDCTL_3)    9 (LIBNDCTL_18)
  0x0110: Rev: 1  Flags: none  Index: 9  Cnt: 2  Name: LIBNDCTL_18
  0x0150: Parent 1: LIBNDCTL_18

In the above, you can see that my libndctl supports up to ABI version 20. The packaged version is v72.1
Reply all
Reply to author
Forward
0 new messages