Difference between revisions of "Test suite"
m (→Known test suite issues) |
(→Procedure) |
||
Line 7: | Line 7: | ||
* ''./configure'' |
* ''./configure'' |
||
* ''make'' |
* ''make'' |
||
− | * ''make fake-install'' (optional, only if you want to run ''make check'' from the top) |
||
* ''make check'' |
* ''make check'' |
||
− | * ''sudo make install'' |
||
+ | * ''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" == |
== Software needed for running "make check" == |
Revision as of 11:05, 18 June 2009
Procedure
- svnv 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)
- csh (or maybe tcsh; needed by some of the libdb2 tests)
- g++
- byacc
- 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".
The 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. We need to have a better way to 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 recent Debian or Ubuntu systems, a bug in expect
that can cause stalls in the dejagnu parts of the test suite is documented at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=421187
The testing user's shell must be listed in /etc/shells or the gssftp tests will fail. This will cease to be a concern for the main krb5 test suite if and when the applications are unbundled into a separate package.
The rlogin and telnet dejagnu tests require root access; without it, the test suite will skip those tests. To run these tests, you can either run the test suite as root, or arrange for "rlogin <localhostname> -l root -x" to succeed. (The environment variables RLOGIN and RLOGIN_FLAGS can override the "rlogin" and "-x" parts of that command line.) This will also cease to be a concern for the main krb5 test suite if and when the applications are unbundled.
While running make check a LD_LIBRARY_PATH error ("could not look up address for hostname"") might come up. You will have to gksudo gedit /etc/hosts for a valid 127.0.1.1 domain name (such as myComputerName.mit.edu) and sudo hostname myComputerName.mit.edu