Test suite
Procedure
- svn checkout svn://anonsvn.mit.edu/krb5/trunk
- Navigate to trunk/src
- util/reconf
- ./configure
- make
- make check
- make install (as root, unless you gave a --prefix option to configure which you can write to as yourself)
Software needed for running "make check"
On Ubuntu or Debian systems, a number of packages need to be installed in order for "make check" to function. These include:
- dejagnu
- expect
- tcl
- tcl-dev (needed by test programs that are extensions to the tcl program)
- portmap (needed by lib/rpc-unit-test)
- g++
- byacc or bison (bison if you configure with "--enable-maintainer-mode" and need to rebuild certain of the parsers where we check in the generated C files)
- ncurses-dev
- libtool libltd13-dev
Known test suite issues
On Linux systems, sometimes the --disable-rpath
option to configure
is required in order to avoid problems with previously-installed versions of MIT krb5. Alternatively, you can run "make install" before "make check".
Prior to krb5-1.9, calls to krb5_c_random_os_entropy that pass the value 1 in the strong
argument (which causes the library to read from the strong OS random number source) can cause stalls and timeouts in the test suite. Changing those calls to pass 0 instead will reduce the stalls. Starting in krb5-1.9, we disable the reading of strong random numbers during tests. This is primarily a problem on Linux systems.
If an existing kdc.conf exists in the "installed" location, it can disrupt the automated tests, especially if it contains syntax errors.
On older Debian or Ubuntu systems, a bug in expect
could cause stalls in the dejagnu parts of the test suite. It is documented at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=421187. Current stable releases of Debian and Ubuntu no longer have an affected version of the expect
package.