To build and install the tpm2.0-tss software the following software is required:
GNU Autoconf
GNU Autoconf archive
GNU Automake
GNU Libtool
C compiler
C++ compiler
C Library Development Libraries and Header Files (for pthreads headers)

Currently the tpm2.0-tss is only distributed via GitHub as we have not yet
produced an official source release. To obtain the tpm2.0-tss sources you
must clone them from the 01.org GitHub organization TPM2.0-TSS git repository:
git clone https://github.com/01org/TPM2.0-TSS

To compile tpm2.0-tss execute the following commands from the root of the
source directory:
$ ./bootstrap
$ ./configure
$ make

We now have basic VPATH support which allows us to separate the source
directory from the build directory. This allows for a developer to do a debug
build and a regular build from the same sources. Any changes to the source
will be buildable from both build directories. Before you attempt this be sure
that the source directory is clean.

Our example requires 3 directories:
TPM2.0-TSS where the sources reside,
tpm2tss-build to hold the build with default configuration
tpm2tss-debug to hold a build with debug configuration

In the TPM2.0-TSS directory bootstrap the build:
$ ./bootsrap

From the tpm2tss-debug directory build the TPM2.0-TSS source code with the
default configuration specified by your platform:
$ ../TPM2.0-TSS/configure
$ make

From the tpm2tss-debug directory build the TPM2.0-TSS source code with
optimization disabled and debug symbols:
$ ../TPM2.0-TSS/configure \
  CFLAGS="-O0 -Wall -Werror -ggdb3" \
  CXXFLAGS="-O0 -Wall -Werror -fno-operator-names -fpermissive -ggdb3"
$ make

Once you've built the tpm2.0-tss software it can be installed with:
$ sudo make install

This will install libtpm2sapi and the resource manager to locations determined
at configure time. See the output of ./configure --help for the available
options. Typically you won't need to do much more than provide an alternative
--prefix option at configure time, and maybe DESTDIR at install time for
packaging.
