Installing PMDK from Source on Linux
Last updated
Last updated
This procedure describes how to clone the source code from the pmdk github repository and compile, then install it.
If your system is behind a firewall and requires a proxy to access the Internet, configure your package manager to use a proxy.
To build the PMDK libraries on Linux, you may need to install the following required packages on the build system:
autoconf
automake
gcc
gcc-c++
glib2-devel
libfabric-devel
pandoc
pkg-config
ncurses-devel
The following packages are required only by selected PMDK components or features. If not present, those components or features may not be available:
libfabric (v1.4.2 or later) -- required by librpmem
To build pmdk without ndctl support, set 'NDCTL_ENABLE=n' using: $ export NDCTL_ENABLE=n
A C/C++ Compiler is required. GCC/G++ will be used in this documentation but you may use a different compiler then set the CC
and CXX
shell environments accordingly.
The following uses the git
utility to clone the repository.
To build the master branch run the make
utility in the root directory:
If you want to compile with a different compiler, you have to provide the CC
and CXX
variables. For example:
These variables are independent and setting CC=clang
does not set CXX=clang++
.
Installing the library is more convenient since it installs man pages and libraries in the standard system locations.
To install the libraries to the default /usr/local
location:
To install this library into other locations, you can use the prefix=path
option, e.g:
If you installed to non-standard directory (anything other than /usr) you may need to add $prefix/lib or $prefix/lib64 (depending on the distribution you use) to the list of directories searched by the linker:
Earlier releases of Ubuntu and Debian do not have libfabric-dev available in the repository. If this library is required, you should compile it yourself. See
The git
utility is required to clone the repository or you can download the source code as a directly from the on GitHub.
libndctl and libdaxctl (v60.1 or later) -- required by daxio and RAS features. See
Alternatively you may download the source code as a from the .