Building PMDK from the source code.
- autoconf
$ sudo apt-get install autoconf
- pkg-config
$ sudo apt-get install pkg-config
- libndctl-devel (v60.1 or later)
Install the following required packages on the build system.
$ wget http://launchpadlibrarian.net/385763707/libdaxctl1_61.2-0ubuntu1~18.04.1_amd64.deb
$ sudo dpkg -i libdaxctl1_61.2-0ubuntu1~18.04.1_amd64.deb
$ wget http://launchpadlibrarian.net/385763708/libndctl6_61.2-0ubuntu1~18.04.1_amd64.deb
$ sudo dpkg -i libndctl6_61.2-0ubuntu1~18.04.1_amd64.deb
$ wget http://launchpadlibrarian.net/385763703/libndctl-dev_61.2-0ubuntu1~18.04.1_amd64.deb
$ sudo dpkg -i libndctl-dev_61.2-0ubuntu1~18.04.1_amd64.deb
- libdaxctl-devel (v60.1 or later)
$ wget http://launchpadlibrarian.net/385763701/libdaxctl-dev_61.2-0ubuntu1~18.04.1_amd64.deb
$ sudo dpkg -i libdaxctl-dev_61.2-0ubuntu1~18.04.1_amd64.deb
To build from source, clone the repository:
$ git clone https://github.com/pmem/pmdk
$ cd pmdk
For a stable version, checkout a release tag:
$ git checkout tags/1.5.1
Build the PMDK using the make
command at the top level:
$ make
(Optional) Installs man pages and libraries in the standard system locations:
$ sudo make install
The DAX (direct access) extensions to the filesystem creates PM-aware environment. Install filesystem with DAX (available today for ext4 and xfs):
$ sudo mkdir /mnt/pmem
$ sudo mkfs.ext4 /dev/pmem0
$ sudo mount -o dax /dev/pmem0 /mnt/pmem