Skip to content

Latest commit

 

History

History
114 lines (84 loc) · 5.13 KB

INSTALL.md

File metadata and controls

114 lines (84 loc) · 5.13 KB

Building tpm2-tools

Below you will find instructions to build and install the tpm2-tools project.

Download the Source

To obtain the tpm2-tools sources you must clone them as below:

git clone https://github.com/tpm2-software/tpm2-tools

Dependencies

To build and install the tpm2-tools software the following software is required:

  • GNU Autoconf
  • GNU Automake
  • GNU Libtool
  • pkg-config
  • C compiler
  • C Library Development Libraries and Header Files (for pthreads headers)
  • SAPI - TPM2.0 TSS SAPI library and header files
  • OpenSSL libcrypto library and header files
  • Curl library and header files

Optional Dependencies:

  • To build the man pages you need pandoc
  • To enable the new userspace resource manager, one must get tpm2-tabrmd (recommended).

Typical Distro Dependency Installation

Ubuntu 16.04

Satisfying the dependencies for tpm2-tools falls into two general steps, stuff you can easily get via the package manager, and stuff you cannot.

NOTE: The tpm2 Userspace Dependencies may not be the correct version in your distros package manager.

Packages:

The packages in the below command can be ascertained via the package manager.

sudo apt-get install autoconf automake libtool pkg-config gcc libssl-dev \
    libcurl4-gnutls-dev

Notes:

  • One can substitute gcc for clang if they desire.
  • On pre-ubuntu 16.04 libcurl4-gnutls-dev was provided by libcurl-dev
    • The libcurl dependency can be satisfied in many ways, and likely change with Ubuntu versions:
      • libcurl4-openssl-dev 7.47.0-1ubuntu2.2
      • libcurl4-nss-dev 7.47.0-1ubuntu2.2
      • libcurl4-gnutls-dev 7.47.0-1ubuntu2.2

tpm2 Userspace Dependencies:

The following tpm2 userspace dependencies can be satisfied by getting the source, building and installing them. They can be located here:

Other Dependencies

To get md2man-roff, see there page at: https://github.com/sunaku/md2man

tpm2-tools SAPI and ABRMD Dependency Version Chart

tpm2-tools version tpm2-tss version tpm2-abrmd version
master master master
2.1.0 1.2.0 1.1.1
df751ae(master) 1.1.0 1.0.0
v2.0.0 1.0 old resourcemgr
v1.1.0 1.0 old resourcemgr
v1.1-beta_1 1.0-beta_1 old resourcemgr
v1.1-beta_0 v1.0-beta_0 old resourcemgr
14a7ff5 210b770 old resourcemgr
4b4cbea d4f23cc old resourcemgr
e8150e4 60ec042 old resourcemgr
84d5f26 371fdbc old resourcemgr
v1.0.1 1.0-alpha_0 old resourcemgr

Building

To compile tpm2-tools execute the following commands from the root of the source directory:

$ ./bootstrap
$ ./configure
$ make

This is sufficient for running as long as you alter PATH so that it points to the tools directory, or just execute them via a full path.

For Example:

./tools/tpm2_getrandom 4

Installing

For those who wish to install, one can execute:

$ sudo make install