Standard
The standard way of building GnuPG is by building and installing all required libraries first and then to build GnuPG. Use this build oder:
- libgpg-error
- npth
- libgcrypt
- libassuan
- libksba
- gnupg
Speedo
With the Speedo system it is possible to quickly build everything with just a few commands. To avoid building with root permissions but properly install GnuPG anyway, it is suggested to install into the home directory. This requires these preparations:
PATH="$HOME/bin:$PATH" LD_LIBRARY_PATH="$HOME/lib:${LD_LIBRARY_PATH}" export PATH LD_LIBRARY_PATH
If sufficient development tools are installed, you may now simply run these commands:
cd mkdir src cd src bzcat gnupg-2.1.0.tar.bz2 | tar xf - cd gnupg-2.1.0 make -f build-aux/speedo.mk native INSTALL_PREFIX="$HOME"
The speedo makefile downloads all dependencies using an online list of current library versions, checks the signatures of the downloaded tarballs, and builds them all in the right order. Use the target "help" instead of "native" to see other options. Note that a version of gpg must have been installed for that to work; on most Linux systems a gpg version (commonly version 1.4) is part of the core system.
There is no Pinentry in that new installation directory and thus by default gpg-agent won’t find one. You may either use the pinentry-program option in gpg-agent.conf or install a symlink to an existing pinentry, like
cd ~/bin ln -s /usr/bin/pinentry .