| Building and running the swtpm has dependencies on the following packages: |
| |
| - automake |
| - autoconf |
| - bash |
| - coreutils |
| - expect |
| - libtool |
| - sed |
| - libtpms |
| - libtpms-devel |
| - fuse |
| - fuse-devel |
| - glib2 |
| - glib2-devel |
| - json-glib-devel |
| - net-tools |
| - python3 |
| - python3-twisted |
| - selinux-policy-devel |
| - socat |
| - trousers |
| - gnutls |
| - gnutls-devel |
| - libtasn1 |
| - libtasn1-tools |
| - libtasn1-devel |
| - rpm-build (to build RPMs) |
| |
| Debian/Ubuntu also needs the following packages to build: |
| |
| - build-essential |
| - devscripts |
| - equivs |
| |
| On RHEL or Fedora use either one of the following methods to install |
| the above dependencies: |
| |
| - sudo dnf builddep ./swtpm.spec (Fedora >= 22) |
| - sudo yum install yum-utils ; sudo yum-builddep ./swtpm.spec (RHEL and Fedora <= 21) |
| - sudo yum install <package name(s)> |
| |
| On Ubuntu use the following command: |
| |
| - sudo mk-build-deps --install ./debian/control |
| |
| |
| Use the following sequence to build and install the Software TPM. |
| |
| ./autogen.sh --prefix=/usr |
| make |
| make check |
| make install |
| |
| |
| To build an rpm on a Fedora or RHEL host do: |
| |
| ./autogen.sh |
| make dist |
| rpmbuild -ta swtpm-*.tar.gz |
| |
| |
| To build a Debian package on a Debian compatible host do: |
| |
| echo "libtpms0 libtpms" > ./debian/shlibs.local |
| debuild -us -uc |