|
Packit |
fd8b60 |
%% Generated by Sphinx.
|
|
Packit |
fd8b60 |
\def\sphinxdocclass{report}
|
|
Packit |
fd8b60 |
\documentclass[letterpaper,10pt,english]{sphinxmanual}
|
|
Packit |
fd8b60 |
\ifdefined\pdfpxdimen
|
|
Packit |
fd8b60 |
\let\sphinxpxdimen\pdfpxdimen\else\newdimen\sphinxpxdimen
|
|
Packit |
fd8b60 |
\fi \sphinxpxdimen=.75bp\relax
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\usepackage[utf8]{inputenc}
|
|
Packit |
fd8b60 |
\ifdefined\DeclareUnicodeCharacter
|
|
Packit |
fd8b60 |
\ifdefined\DeclareUnicodeCharacterAsOptional
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{"00A0}{\nobreakspace}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{"2500}{\sphinxunichar{2500}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{"2502}{\sphinxunichar{2502}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{"2514}{\sphinxunichar{2514}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{"251C}{\sphinxunichar{251C}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{"2572}{\textbackslash}
|
|
Packit |
fd8b60 |
\else
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{00A0}{\nobreakspace}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{2500}{\sphinxunichar{2500}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{2502}{\sphinxunichar{2502}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{2514}{\sphinxunichar{2514}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{251C}{\sphinxunichar{251C}}
|
|
Packit |
fd8b60 |
\DeclareUnicodeCharacter{2572}{\textbackslash}
|
|
Packit |
fd8b60 |
\fi
|
|
Packit |
fd8b60 |
\fi
|
|
Packit |
fd8b60 |
\usepackage{cmap}
|
|
Packit |
fd8b60 |
\usepackage[T1]{fontenc}
|
|
Packit |
fd8b60 |
\usepackage{amsmath,amssymb,amstext}
|
|
Packit |
fd8b60 |
\usepackage{babel}
|
|
Packit |
fd8b60 |
\usepackage{times}
|
|
Packit |
fd8b60 |
\usepackage[Bjarne]{fncychap}
|
|
Packit |
fd8b60 |
\usepackage[dontkeepoldnames]{sphinx}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\usepackage{geometry}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
% Include hyperref last.
|
|
Packit |
fd8b60 |
\usepackage{hyperref}
|
|
Packit |
fd8b60 |
% Fix anchor placement for figures with captions.
|
|
Packit |
fd8b60 |
\usepackage{hypcap}% it must be loaded after hyperref.
|
|
Packit |
fd8b60 |
% Set up styles of URL: it should be placed after hyperref.
|
|
Packit |
fd8b60 |
\urlstyle{same}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\addto\captionsenglish{\renewcommand{\figurename}{Fig.}}
|
|
Packit |
fd8b60 |
\addto\captionsenglish{\renewcommand{\tablename}{Table}}
|
|
Packit |
fd8b60 |
\addto\captionsenglish{\renewcommand{\literalblockname}{Listing}}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\addto\captionsenglish{\renewcommand{\literalblockcontinuedname}{continued from previous page}}
|
|
Packit |
fd8b60 |
\addto\captionsenglish{\renewcommand{\literalblockcontinuesname}{continues on next page}}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\addto\extrasenglish{\def\pageautorefname{page}}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\setcounter{tocdepth}{0}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\title{Building MIT Kerberos}
|
|
Packit |
fd8b60 |
\date{ }
|
|
Packit |
fd8b60 |
\release{1.18.2}
|
|
Packit |
fd8b60 |
\author{MIT}
|
|
Packit |
fd8b60 |
\newcommand{\sphinxlogo}{\vbox{}}
|
|
Packit |
fd8b60 |
\renewcommand{\releasename}{Release}
|
|
Packit |
fd8b60 |
\makeindex
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\begin{document}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\maketitle
|
|
Packit |
fd8b60 |
\sphinxtableofcontents
|
|
Packit |
fd8b60 |
\phantomsection\label{\detokenize{build/index::doc}}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
This section details how to build and install MIT Kerberos software
|
|
Packit |
fd8b60 |
from the source.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\chapter{Prerequisites}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/index:building-kerberos-v5}}\label{\detokenize{build/index:prerequisites}}\label{\detokenize{build/index:build-v5}}
|
|
Packit |
fd8b60 |
In order to build Kerberos V5, you will need approximately 60-70
|
|
Packit |
fd8b60 |
megabytes of disk space. The exact amount will vary depending on the
|
|
Packit |
fd8b60 |
platform and whether the distribution is compiled with debugging
|
|
Packit |
fd8b60 |
symbol tables or not.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
Your C compiler must conform to ANSI C (ISO/IEC 9899:1990, “c89”).
|
|
Packit |
fd8b60 |
Some operating systems do not have an ANSI C compiler, or their
|
|
Packit |
fd8b60 |
default compiler requires extra command-line options to enable ANSI C
|
|
Packit |
fd8b60 |
conformance.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
If you wish to keep a separate build tree, which contains the compiled
|
|
Packit |
fd8b60 |
*.o file and executables, separate from your source tree, you will
|
|
Packit |
fd8b60 |
need a make program which supports \sphinxstylestrong{VPATH}, or you will need to use
|
|
Packit |
fd8b60 |
a tool such as lndir to produce a symbolic link tree for your build
|
|
Packit |
fd8b60 |
tree.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\chapter{Obtaining the software}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/index:obtaining-the-software}}
|
|
Packit |
fd8b60 |
The source code can be obtained from MIT Kerberos Distribution page,
|
|
Packit |
fd8b60 |
at \sphinxurl{https://kerberos.org/dist/index.html}.
|
|
Packit |
fd8b60 |
The MIT Kerberos distribution comes in an archive file, generally
|
|
Packit |
fd8b60 |
named krb5-VERSION-signed.tar, where \sphinxstyleemphasis{VERSION} is a placeholder for
|
|
Packit |
fd8b60 |
the major and minor versions of MIT Kerberos. (For example, MIT
|
|
Packit |
fd8b60 |
Kerberos 1.9 has major version “1” and minor version “9”.)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
The krb5-VERSION-signed.tar contains a compressed tar file consisting
|
|
Packit |
fd8b60 |
of the sources for all of Kerberos (generally named
|
|
Packit |
fd8b60 |
krb5-VERSION.tar.gz) and a PGP signature file for this source tree
|
|
Packit |
fd8b60 |
(generally named krb5-VERSION.tar.gz.asc). MIT highly recommends that
|
|
Packit |
fd8b60 |
you verify the integrity of the source code using this signature,
|
|
Packit |
fd8b60 |
e.g., by running:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{tar} \PYG{n}{xf} \PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{\PYGZhy{}}\PYG{n}{signed}\PYG{o}{.}\PYG{n}{tar}
|
|
Packit |
fd8b60 |
\PYG{n}{gpg} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{n}{verify} \PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{.}\PYG{n}{tar}\PYG{o}{.}\PYG{n}{gz}\PYG{o}{.}\PYG{n}{asc}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
Unpack krb5-VERSION.tar.gz in some directory. In this section we will assume
|
|
Packit |
fd8b60 |
that you have chosen the top directory of the distribution the directory
|
|
Packit |
fd8b60 |
\sphinxcode{/u1/krb5-VERSION}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
Review the README file for the license, copyright and other sprecific to the
|
|
Packit |
fd8b60 |
distribution information.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\chapter{Contents}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/index:contents}}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\section{Organization of the source directory}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/directory_org::doc}}\label{\detokenize{build/directory_org:organization-of-the-source-directory}}
|
|
Packit |
fd8b60 |
Below is a brief overview of the organization of the complete source
|
|
Packit |
fd8b60 |
directory. More detailed descriptions follow.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\begin{savenotes}\sphinxattablestart
|
|
Packit |
fd8b60 |
\centering
|
|
Packit |
fd8b60 |
\begin{tabulary}{\linewidth}[t]{|T|T|}
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
appl
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Kerberos application client and server programs
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
ccapi
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Credential cache services
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
clients
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Kerberos V5 user programs (See \DUrole{xref,std,std-ref}{user\_commands})
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
config
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Configure scripts
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
config-files
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Sample Kerberos configuration files
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
include
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
include files needed to build the Kerberos system
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
kadmin
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Administrative interface to the Kerberos master database: \DUrole{xref,std,std-ref}{kadmin(1)}, \DUrole{xref,std,std-ref}{kdb5\_util(8)}, \DUrole{xref,std,std-ref}{ktutil(1)}.
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
kdc
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Kerberos V5 Authentication Service and Key Distribution Center
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
{\hyperref[\detokenize{build/directory_org:lib}]{\sphinxcrossref{lib}}}
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Libraries for use with/by Kerberos V5
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
plugins
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Kerberos plugins directory
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
po
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Localization infrastructure
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
prototype
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Templates files containing the MIT copyright message and a placeholder for the title and description of the file.
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
kprop
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Utilities for propagating the database to replica KDCs \DUrole{xref,std,std-ref}{kprop(8)} and \DUrole{xref,std,std-ref}{kpropd(8)}
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
tests
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Test suite
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
{\hyperref[\detokenize{build/directory_org:util}]{\sphinxcrossref{util}}}
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Various utilities for building/configuring the code, sending bug reports, etc.
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
windows
|
|
Packit |
fd8b60 |
&
|
|
Packit |
fd8b60 |
Source code for building Kerberos V5 on Windows (see windows/README)
|
|
Packit |
fd8b60 |
\\
|
|
Packit |
fd8b60 |
\hline
|
|
Packit |
fd8b60 |
\end{tabulary}
|
|
Packit |
fd8b60 |
\par
|
|
Packit |
fd8b60 |
\sphinxattableend\end{savenotes}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{lib}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/directory_org:lib}}\label{\detokenize{build/directory_org:id1}}
|
|
Packit |
fd8b60 |
The lib directory contain several subdirectories as well as some
|
|
Packit |
fd8b60 |
definition and glue files.
|
|
Packit |
fd8b60 |
\begin{itemize}
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
The apputils directory contains the code for the generic network
|
|
Packit |
fd8b60 |
servicing.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
The crypto subdirectory contains the Kerberos V5 encryption
|
|
Packit |
fd8b60 |
library.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
The gssapi library contains the Generic Security Services API,
|
|
Packit |
fd8b60 |
which is a library of commands to be used in secure client-server
|
|
Packit |
fd8b60 |
communication.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
The kadm5 directory contains the libraries for the KADM5
|
|
Packit |
fd8b60 |
administration utilities.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
The Kerberos 5 database libraries are contained in kdb.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
The krb5 directory contains Kerberos 5 API.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
The rpc directory contains the API for the Kerberos Remote
|
|
Packit |
fd8b60 |
Procedure Call protocol.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{itemize}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{util}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/directory_org:util}}\label{\detokenize{build/directory_org:id2}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{The util directory contains several utility programs and libraries.}] \leavevmode\begin{itemize}
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
the programs used to configure and build the code, such as
|
|
Packit |
fd8b60 |
autoconf, lndir, kbuild, reconf, and makedepend, are in this
|
|
Packit |
fd8b60 |
directory.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
the profile directory contains most of the functions which parse
|
|
Packit |
fd8b60 |
the Kerberos configuration files (krb5.conf and kdc.conf).
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
the Kerberos error table library and utilities (et);
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
the Sub-system library and utilities (ss);
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
database utilities (db2);
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
pseudo-terminal utilities (pty);
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
bug-reporting program send-pr;
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
a generic support library support used by several of our other
|
|
Packit |
fd8b60 |
libraries;
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
the build infrastructure for building lightweight Kerberos client
|
|
Packit |
fd8b60 |
(collected-client-lib)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
the tool for validating Kerberos configuration files
|
|
Packit |
fd8b60 |
(confvalidator);
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
the toolkit for kernel integrators for building krb5 code subsets
|
|
Packit |
fd8b60 |
(gss-kernel-lib);
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
source code for building Kerberos V5 on MacOS (mac)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
Windows getopt operations (windows)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{itemize}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\section{Doing the build}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build::doc}}\label{\detokenize{build/doing_build:doing-the-build}}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Building within a single tree}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build:do-build}}\label{\detokenize{build/doing_build:building-within-a-single-tree}}
|
|
Packit |
fd8b60 |
If you only need to build Kerberos for one platform, using a single
|
|
Packit |
fd8b60 |
directory tree which contains both the source files and the object
|
|
Packit |
fd8b60 |
files is the simplest. However, if you need to maintain Kerberos for
|
|
Packit |
fd8b60 |
a large number of platforms, you will probably want to use separate
|
|
Packit |
fd8b60 |
build trees for each platform. We recommend that you look at OS
|
|
Packit |
fd8b60 |
Incompatibilities, for notes that we have on particular operating
|
|
Packit |
fd8b60 |
systems.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
If you don’t want separate build trees for each architecture, then use
|
|
Packit |
fd8b60 |
the following abbreviated procedure:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{cd} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{/}\PYG{n}{src}
|
|
Packit |
fd8b60 |
\PYG{o}{.}\PYG{o}{/}\PYG{n}{configure}
|
|
Packit |
fd8b60 |
\PYG{n}{make}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
That’s it!
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Building with separate build directories}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build:building-with-separate-build-directories}}
|
|
Packit |
fd8b60 |
If you wish to keep separate build directories for each platform, you
|
|
Packit |
fd8b60 |
can do so using the following procedure. (Note, this requires that
|
|
Packit |
fd8b60 |
your make program support VPATH. GNU’s make will provide this
|
|
Packit |
fd8b60 |
functionality, for example.) If your make program does not support
|
|
Packit |
fd8b60 |
this, see the next section.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
For example, if you wish to store the binaries in \sphinxcode{tmpbuild} build
|
|
Packit |
fd8b60 |
directory you might use the following procedure:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{mkdir} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{tmpbuild}
|
|
Packit |
fd8b60 |
\PYG{n}{cd} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{tmpbuild}
|
|
Packit |
fd8b60 |
\PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{/}\PYG{n}{src}\PYG{o}{/}\PYG{n}{configure}
|
|
Packit |
fd8b60 |
\PYG{n}{make}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Building using lndir}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build:building-using-lndir}}
|
|
Packit |
fd8b60 |
If you wish to keep separate build directories for each platform, and
|
|
Packit |
fd8b60 |
you do not have access to a make program which supports VPATH, all is
|
|
Packit |
fd8b60 |
not lost. You can use the lndir program to create symbolic link trees
|
|
Packit |
fd8b60 |
in your build directory.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
For example, if you wish to create a build directory for solaris
|
|
Packit |
fd8b60 |
binaries you might use the following procedure:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
mkdir /u1/krb5\PYGZhy{}VERSION/solaris
|
|
Packit |
fd8b60 |
cd /u1/krb5\PYGZhy{}VERSION/solaris
|
|
Packit |
fd8b60 |
/u1/krb5\PYGZhy{}VERSION/src/util/lndir {}`pwd{}`/../src
|
|
Packit |
fd8b60 |
./configure
|
|
Packit |
fd8b60 |
make
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
You must give an absolute pathname to lndir because it has a bug that
|
|
Packit |
fd8b60 |
makes it fail for relative pathnames. Note that this version differs
|
|
Packit |
fd8b60 |
from the latest version as distributed and installed by the
|
|
Packit |
fd8b60 |
XConsortium with X11R6. Either version should be acceptable.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Installing the binaries}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build:installing-the-binaries}}
|
|
Packit |
fd8b60 |
Once you have built Kerberos, you should install the binaries. You can
|
|
Packit |
fd8b60 |
do this by running:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{make} \PYG{n}{install}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
If you want to install the binaries into a destination directory that
|
|
Packit |
fd8b60 |
is not their final destination, which may be convenient if you want to
|
|
Packit |
fd8b60 |
build a binary distribution to be deployed on multiple hosts, you may
|
|
Packit |
fd8b60 |
use:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{make} \PYG{n}{install} \PYG{n}{DESTDIR}\PYG{o}{=}\PYG{o}{/}\PYG{n}{path}\PYG{o}{/}\PYG{n}{to}\PYG{o}{/}\PYG{n}{destdir}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
This will install the binaries under \sphinxstyleemphasis{DESTDIR/PREFIX}, e.g., the user
|
|
Packit |
fd8b60 |
programs will install into \sphinxstyleemphasis{DESTDIR/PREFIX/bin}, the libraries into
|
|
Packit |
fd8b60 |
\sphinxstyleemphasis{DESTDIR/PREFIX/lib}, etc. \sphinxstyleemphasis{DESTDIR} must be an absolute path.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
Some implementations of make allow multiple commands to be run in
|
|
Packit |
fd8b60 |
parallel, for faster builds. We test our Makefiles in parallel builds
|
|
Packit |
fd8b60 |
with GNU make only; they may not be compatible with other parallel
|
|
Packit |
fd8b60 |
build implementations.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Testing the build}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build:testing-the-build}}
|
|
Packit |
fd8b60 |
The Kerberos V5 distribution comes with built-in regression tests. To
|
|
Packit |
fd8b60 |
run them, simply type the following command while in the top-level
|
|
Packit |
fd8b60 |
build directory (i.e., the directory where you sent typed make to
|
|
Packit |
fd8b60 |
start building Kerberos; see {\hyperref[\detokenize{build/doing_build:do-build}]{\sphinxcrossref{\DUrole{std,std-ref}{Building within a single tree}}}}):
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{make} \PYG{n}{check}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
However, there are several prerequisites that must be satisfied first:
|
|
Packit |
fd8b60 |
\begin{itemize}
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
Configure and build Kerberos with Tcl support. Tcl is used to drive
|
|
Packit |
fd8b60 |
the test suite. This often means passing \sphinxstylestrong{-}\sphinxstylestrong{-with-tcl} to
|
|
Packit |
fd8b60 |
configure to tell it the location of the Tcl configuration
|
|
Packit |
fd8b60 |
script. (See {\hyperref[\detokenize{build/options2configure:options2configure}]{\sphinxcrossref{\DUrole{std,std-ref}{Options to configure}}}}.)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
In addition to Tcl, DejaGnu must be available on the system for some
|
|
Packit |
fd8b60 |
of the tests to run. The test suite will still run the other tests
|
|
Packit |
fd8b60 |
if DejaGnu is not present, but the test coverage will be reduced
|
|
Packit |
fd8b60 |
accordingly.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
On some operating systems, you have to run \sphinxcode{make install} before
|
|
Packit |
fd8b60 |
running \sphinxcode{make check}, or the test suite will pick up installed
|
|
Packit |
fd8b60 |
versions of Kerberos libraries rather than the newly built ones.
|
|
Packit |
fd8b60 |
You can install into a prefix that isn’t in the system library
|
|
Packit |
fd8b60 |
search path, though. Alternatively, you can configure with
|
|
Packit |
fd8b60 |
\sphinxstylestrong{-}\sphinxstylestrong{-disable-rpath}, which renders the build tree less suitable for
|
|
Packit |
fd8b60 |
installation, but allows testing without interference from
|
|
Packit |
fd8b60 |
previously installed libraries.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{itemize}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
There are additional regression tests available, which are not run
|
|
Packit |
fd8b60 |
by \sphinxcode{make check}. These tests require manual setup and teardown of
|
|
Packit |
fd8b60 |
support infrastructure which is not easily automated, or require
|
|
Packit |
fd8b60 |
excessive resources for ordinary use. The procedure for running
|
|
Packit |
fd8b60 |
the manual tests is documented at
|
|
Packit |
fd8b60 |
\sphinxurl{https://k5wiki.kerberos.org/wiki/Manual\_Testing}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Cleaning up the build}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build:cleaning-up-the-build}}\begin{itemize}
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
Use \sphinxcode{make clean} to remove all files generated by running make
|
|
Packit |
fd8b60 |
command.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item {}
|
|
Packit |
fd8b60 |
Use \sphinxcode{make distclean} to remove all files generated by running
|
|
Packit |
fd8b60 |
./configure script. After running \sphinxcode{make distclean} your source
|
|
Packit |
fd8b60 |
tree (ideally) should look like the raw (just un-tarred) source
|
|
Packit |
fd8b60 |
tree.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{itemize}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Using autoconf}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/doing_build:using-autoconf}}
|
|
Packit |
fd8b60 |
(If you are not a developer, you can ignore this section.)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
In the Kerberos V5 source directory, there is a configure script which
|
|
Packit |
fd8b60 |
automatically determines the compilation environment and creates the
|
|
Packit |
fd8b60 |
proper Makefiles for a particular platform. This configure script is
|
|
Packit |
fd8b60 |
generated using autoconf, which you should already have installed if
|
|
Packit |
fd8b60 |
you will be making changes to \sphinxcode{src/configure.in}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
Normal users will not need to worry about running autoconf; the
|
|
Packit |
fd8b60 |
distribution comes with the configure script already prebuilt.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
The autoconf package comes with a script called \sphinxcode{autoreconf} that
|
|
Packit |
fd8b60 |
will automatically run \sphinxcode{autoconf} and \sphinxcode{autoheader} as needed. You
|
|
Packit |
fd8b60 |
should run \sphinxcode{autoreconf} from the top source directory, e.g.:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{cd} \PYG{o}{/}\PYG{n}{u1}\PYG{o}{/}\PYG{n}{krb5}\PYG{o}{\PYGZhy{}}\PYG{n}{VERSION}\PYG{o}{/}\PYG{n}{src}
|
|
Packit |
fd8b60 |
\PYG{n}{autoreconf} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{n}{verbose}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\section{Options to \sphinxstyleemphasis{configure}}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:options2configure}}\label{\detokenize{build/options2configure::doc}}\label{\detokenize{build/options2configure:options-to-configure}}
|
|
Packit |
fd8b60 |
There are a number of options to configure which you can use to
|
|
Packit |
fd8b60 |
control how the Kerberos distribution is built.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Most commonly used options}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:most-commonly-used-options}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-help}}] \leavevmode
|
|
Packit |
fd8b60 |
Provides help to configure. This will list the set of commonly
|
|
Packit |
fd8b60 |
used options for building Kerberos.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-prefix=}\sphinxstyleemphasis{PREFIX}}] \leavevmode
|
|
Packit |
fd8b60 |
By default, Kerberos will install the package’s files rooted at
|
|
Packit |
fd8b60 |
\sphinxcode{/usr/local}. If you desire to place the binaries into the
|
|
Packit |
fd8b60 |
directory \sphinxstyleemphasis{PREFIX}, use this option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix=}\sphinxstyleemphasis{EXECPREFIX}}] \leavevmode
|
|
Packit |
fd8b60 |
This option allows one to separate the architecture independent
|
|
Packit |
fd8b60 |
programs from the host-dependent files (configuration files,
|
|
Packit |
fd8b60 |
manual pages). Use this option to install architecture-dependent
|
|
Packit |
fd8b60 |
programs in \sphinxstyleemphasis{EXECPREFIX}. The default location is the value of
|
|
Packit |
fd8b60 |
specified by \sphinxstylestrong{-}\sphinxstylestrong{-prefix} option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-localstatedir=}\sphinxstyleemphasis{LOCALSTATEDIR}}] \leavevmode
|
|
Packit |
fd8b60 |
This option sets the directory for locally modifiable
|
|
Packit |
fd8b60 |
single-machine data. In Kerberos, this mostly is useful for
|
|
Packit |
fd8b60 |
setting a location for the KDC data files, as they will be
|
|
Packit |
fd8b60 |
installed in \sphinxcode{LOCALSTATEDIR/krb5kdc}, which is by default
|
|
Packit |
fd8b60 |
\sphinxcode{PREFIX/var/krb5kdc}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-netlib}{[}=\sphinxstyleemphasis{libs}{]}}] \leavevmode
|
|
Packit |
fd8b60 |
Allows for suppression of or replacement of network libraries. By
|
|
Packit |
fd8b60 |
default, Kerberos V5 configuration will look for \sphinxcode{-lnsl} and
|
|
Packit |
fd8b60 |
\sphinxcode{-lsocket}. If your operating system has a broken resolver
|
|
Packit |
fd8b60 |
library or fails to pass the tests in \sphinxcode{src/tests/resolv}, you
|
|
Packit |
fd8b60 |
will need to use this option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-tcl=}\sphinxstyleemphasis{TCLPATH}}] \leavevmode
|
|
Packit |
fd8b60 |
Some of the unit-tests in the build tree rely upon using a program
|
|
Packit |
fd8b60 |
in Tcl. The directory specified by \sphinxstyleemphasis{TCLPATH} specifies where the
|
|
Packit |
fd8b60 |
Tcl header file (TCLPATH/include/tcl.h) as well as where the Tcl
|
|
Packit |
fd8b60 |
library (TCLPATH/lib) should be found.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-dns-for-realm}}] \leavevmode
|
|
Packit |
fd8b60 |
Enable the use of DNS to look up a host’s Kerberos realm,
|
|
Packit |
fd8b60 |
if the information is not provided in
|
|
Packit |
fd8b60 |
\DUrole{xref,std,std-ref}{krb5.conf(5)}. See \DUrole{xref,std,std-ref}{mapping\_hostnames}
|
|
Packit |
fd8b60 |
for information about using DNS to determine the default realm.
|
|
Packit |
fd8b60 |
DNS lookups for realm names are disabled by default.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-et}}] \leavevmode
|
|
Packit |
fd8b60 |
Use an installed version of the error-table (et) support software,
|
|
Packit |
fd8b60 |
the compile\_et program, the com\_err.h header file and the com\_err
|
|
Packit |
fd8b60 |
library. If these are not in the default locations, you may wish
|
|
Packit |
fd8b60 |
to specify \sphinxcode{CPPFLAGS=-I/some/dir} and
|
|
Packit |
fd8b60 |
\sphinxcode{LDFLAGS=-L/some/other/dir} options at configuration time as
|
|
Packit |
fd8b60 |
well.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
If this option is not given, a version supplied with the Kerberos
|
|
Packit |
fd8b60 |
sources will be built and installed along with the rest of the
|
|
Packit |
fd8b60 |
Kerberos tree, for Kerberos applications to link against.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-ss}}] \leavevmode
|
|
Packit |
fd8b60 |
Use an installed version of the subsystem command-line interface
|
|
Packit |
fd8b60 |
software, the mk\_cmds program, the \sphinxcode{ss/ss.h} header file and the
|
|
Packit |
fd8b60 |
ss library. If these are not in the default locations, you may
|
|
Packit |
fd8b60 |
wish to specify \sphinxcode{CPPFLAGS=-I/some/dir} and
|
|
Packit |
fd8b60 |
\sphinxcode{LDFLAGS=-L/some/other/dir} options at configuration time as
|
|
Packit |
fd8b60 |
well. See also the \sphinxstylestrong{SS\_LIB} option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
If this option is not given, the ss library supplied with the
|
|
Packit |
fd8b60 |
Kerberos sources will be compiled and linked into those programs
|
|
Packit |
fd8b60 |
that need it; it will not be installed separately.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-db}}] \leavevmode
|
|
Packit |
fd8b60 |
Use an installed version of the Berkeley DB package, which must
|
|
Packit |
fd8b60 |
provide an API compatible with version 1.85. This option is
|
|
Packit |
fd8b60 |
unsupported and untested. In particular, we do not know if the
|
|
Packit |
fd8b60 |
database-rename code used in the dumpfile load operation will
|
|
Packit |
fd8b60 |
behave properly.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
If this option is not given, a version supplied with the Kerberos
|
|
Packit |
fd8b60 |
sources will be built and installed. (We are not updating this
|
|
Packit |
fd8b60 |
version at this time because of licensing issues with newer
|
|
Packit |
fd8b60 |
versions that we haven’t investigated sufficiently yet.)
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Environment variables}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:environment-variables}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{CC=}\sphinxstyleemphasis{COMPILER}}] \leavevmode
|
|
Packit |
fd8b60 |
Use \sphinxstyleemphasis{COMPILER} as the C compiler.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{CFLAGS=}\sphinxstyleemphasis{FLAGS}}] \leavevmode
|
|
Packit |
fd8b60 |
Use \sphinxstyleemphasis{FLAGS} as the default set of C compiler flags.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{CPP=}\sphinxstyleemphasis{CPP}}] \leavevmode
|
|
Packit |
fd8b60 |
C preprocessor to use. (e.g., \sphinxcode{CPP='gcc -E'})
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{CPPFLAGS=}\sphinxstyleemphasis{CPPOPTS}}] \leavevmode
|
|
Packit |
fd8b60 |
Use \sphinxstyleemphasis{CPPOPTS} as the default set of C preprocessor flags. The
|
|
Packit |
fd8b60 |
most common use of this option is to select certain \#define’s for
|
|
Packit |
fd8b60 |
use with the operating system’s include files.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DB\_HEADER=}\sphinxstyleemphasis{headername}}] \leavevmode
|
|
Packit |
fd8b60 |
If db.h is not the correct header file to include to compile
|
|
Packit |
fd8b60 |
against the Berkeley DB 1.85 API, specify the correct header file
|
|
Packit |
fd8b60 |
name with this option. For example, \sphinxcode{DB\_HEADER=db3/db\_185.h}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DB\_LIB=}\sphinxstyleemphasis{libs}…}] \leavevmode
|
|
Packit |
fd8b60 |
If \sphinxcode{-ldb} is not the correct library specification for the
|
|
Packit |
fd8b60 |
Berkeley DB library version to be used, override it with this
|
|
Packit |
fd8b60 |
option. For example, \sphinxcode{DB\_LIB=-ldb-3.3}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DEFCCNAME=}\sphinxstyleemphasis{ccachename}}] \leavevmode
|
|
Packit |
fd8b60 |
Override the built-in default credential cache name.
|
|
Packit |
fd8b60 |
For example, \sphinxcode{DEFCCNAME=DIR:/var/run/user/\%\{USERID\}/ccache}
|
|
Packit |
fd8b60 |
See \DUrole{xref,std,std-ref}{parameter\_expansion} for information about supported
|
|
Packit |
fd8b60 |
parameter expansions.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DEFCKTNAME=}\sphinxstyleemphasis{keytabname}}] \leavevmode
|
|
Packit |
fd8b60 |
Override the built-in default client keytab name.
|
|
Packit |
fd8b60 |
The format is the same as for \sphinxstyleemphasis{DEFCCNAME}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DEFKTNAME=}\sphinxstyleemphasis{keytabname}}] \leavevmode
|
|
Packit |
fd8b60 |
Override the built-in default keytab name.
|
|
Packit |
fd8b60 |
The format is the same as for \sphinxstyleemphasis{DEFCCNAME}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{LD=}\sphinxstyleemphasis{LINKER}}] \leavevmode
|
|
Packit |
fd8b60 |
Use \sphinxstyleemphasis{LINKER} as the default loader if it should be different from
|
|
Packit |
fd8b60 |
C compiler as specified above.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{LDFLAGS=}\sphinxstyleemphasis{LDOPTS}}] \leavevmode
|
|
Packit |
fd8b60 |
This option informs the linker where to get additional libraries
|
|
Packit |
fd8b60 |
(e.g., \sphinxcode{-L\textless{}lib dir\textgreater{}}).
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{LIBS=}\sphinxstyleemphasis{LDNAME}}] \leavevmode
|
|
Packit |
fd8b60 |
This option allows one to specify libraries to be passed to the
|
|
Packit |
fd8b60 |
linker (e.g., \sphinxcode{-l\textless{}library\textgreater{}})
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{SS\_LIB=}\sphinxstyleemphasis{libs}…}] \leavevmode
|
|
Packit |
fd8b60 |
If \sphinxcode{-lss} is not the correct way to link in your installed ss
|
|
Packit |
fd8b60 |
library, for example if additional support libraries are needed,
|
|
Packit |
fd8b60 |
specify the correct link options here. Some variants of this
|
|
Packit |
fd8b60 |
library are around which allow for Emacs-like line editing, but
|
|
Packit |
fd8b60 |
different versions require different support libraries to be
|
|
Packit |
fd8b60 |
explicitly specified.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
This option is ignored if \sphinxstylestrong{-}\sphinxstylestrong{-with-system-ss} is not specified.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{YACC}}] \leavevmode
|
|
Packit |
fd8b60 |
The ‘Yet Another C Compiler’ implementation to use. Defaults to
|
|
Packit |
fd8b60 |
the first program found out of: ‘\sphinxtitleref{bison -y}’, ‘\sphinxtitleref{byacc}’,
|
|
Packit |
fd8b60 |
‘\sphinxtitleref{yacc}’.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{YFLAGS}}] \leavevmode
|
|
Packit |
fd8b60 |
The list of arguments that will be passed by default to \$YACC.
|
|
Packit |
fd8b60 |
This script will default YFLAGS to the empty string to avoid a
|
|
Packit |
fd8b60 |
default value of \sphinxcode{-d} given by some make applications.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Fine tuning of the installation directories}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:fine-tuning-of-the-installation-directories}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-bindir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
User executables. Defaults to \sphinxcode{EXECPREFIX/bin}, where
|
|
Packit |
fd8b60 |
\sphinxstyleemphasis{EXECPREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix}
|
|
Packit |
fd8b60 |
configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-sbindir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
System admin executables. Defaults to \sphinxcode{EXECPREFIX/sbin}, where
|
|
Packit |
fd8b60 |
\sphinxstyleemphasis{EXECPREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix}
|
|
Packit |
fd8b60 |
configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-sysconfdir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
Read-only single-machine data such as krb5.conf.
|
|
Packit |
fd8b60 |
Defaults to \sphinxcode{PREFIX/etc}, where
|
|
Packit |
fd8b60 |
\sphinxstyleemphasis{PREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-prefix} configuration
|
|
Packit |
fd8b60 |
option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-libdir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
Object code libraries. Defaults to \sphinxcode{EXECPREFIX/lib}, where
|
|
Packit |
fd8b60 |
\sphinxstyleemphasis{EXECPREFIX} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-exec-prefix}
|
|
Packit |
fd8b60 |
configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-includedir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
C header files. Defaults to \sphinxcode{PREFIX/include}, where \sphinxstyleemphasis{PREFIX} is
|
|
Packit |
fd8b60 |
the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-prefix} configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-datarootdir=}\sphinxstyleemphasis{DATAROOTDIR}}] \leavevmode
|
|
Packit |
fd8b60 |
Read-only architecture-independent data root. Defaults to
|
|
Packit |
fd8b60 |
\sphinxcode{PREFIX/share}, where \sphinxstyleemphasis{PREFIX} is the path specified by
|
|
Packit |
fd8b60 |
\sphinxstylestrong{-}\sphinxstylestrong{-prefix} configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-datadir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
Read-only architecture-independent data. Defaults to path
|
|
Packit |
fd8b60 |
specified by \sphinxstylestrong{-}\sphinxstylestrong{-datarootdir} configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-localedir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
Locale-dependent data. Defaults to \sphinxcode{DATAROOTDIR/locale}, where
|
|
Packit |
fd8b60 |
\sphinxstyleemphasis{DATAROOTDIR} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-datarootdir}
|
|
Packit |
fd8b60 |
configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-mandir=}\sphinxstyleemphasis{DIR}}] \leavevmode
|
|
Packit |
fd8b60 |
Man documentation. Defaults to \sphinxcode{DATAROOTDIR/man}, where
|
|
Packit |
fd8b60 |
\sphinxstyleemphasis{DATAROOTDIR} is the path specified by \sphinxstylestrong{-}\sphinxstylestrong{-datarootdir}
|
|
Packit |
fd8b60 |
configuration option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Program names}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:program-names}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-program-prefix=}\sphinxstyleemphasis{PREFIX}}] \leavevmode
|
|
Packit |
fd8b60 |
Prepend \sphinxstyleemphasis{PREFIX} to the names of the programs when installing
|
|
Packit |
fd8b60 |
them. For example, specifying \sphinxcode{-{-}program-prefix=mit-} at the
|
|
Packit |
fd8b60 |
configure time will cause the program named \sphinxcode{abc} to be
|
|
Packit |
fd8b60 |
installed as \sphinxcode{mit-abc}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-program-suffix=}\sphinxstyleemphasis{SUFFIX}}] \leavevmode
|
|
Packit |
fd8b60 |
Append \sphinxstyleemphasis{SUFFIX} to the names of the programs when installing them.
|
|
Packit |
fd8b60 |
For example, specifying \sphinxcode{-{-}program-suffix=-mit} at the configure
|
|
Packit |
fd8b60 |
time will cause the program named \sphinxcode{abc} to be installed as
|
|
Packit |
fd8b60 |
\sphinxcode{abc-mit}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-program-transform-name=}\sphinxstyleemphasis{PROGRAM}}] \leavevmode
|
|
Packit |
fd8b60 |
Run \sphinxcode{sed -e PROGRAM} on installed program names. (\sphinxstyleemphasis{PROGRAM} is a
|
|
Packit |
fd8b60 |
sed script).
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{System types}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:system-types}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-build=}\sphinxstyleemphasis{BUILD}}] \leavevmode
|
|
Packit |
fd8b60 |
Configure for building on \sphinxstyleemphasis{BUILD}
|
|
Packit |
fd8b60 |
(e.g., \sphinxcode{-{-}build=x86\_64-linux-gnu}).
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-host=}\sphinxstyleemphasis{HOST}}] \leavevmode
|
|
Packit |
fd8b60 |
Cross-compile to build programs to run on \sphinxstyleemphasis{HOST}
|
|
Packit |
fd8b60 |
(e.g., \sphinxcode{-{-}host=x86\_64-linux-gnu}). By default, Kerberos V5
|
|
Packit |
fd8b60 |
configuration will look for “build” option.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Optional features}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:optional-features}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-option-checking}}] \leavevmode
|
|
Packit |
fd8b60 |
Ignore unrecognized \textendash{}enable/\textendash{}with options.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-}\sphinxstyleemphasis{FEATURE}}] \leavevmode
|
|
Packit |
fd8b60 |
Do not include \sphinxstyleemphasis{FEATURE} (same as \textendash{}enable-FEATURE=no).
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-}\sphinxstyleemphasis{FEATURE}{[}=\sphinxstyleemphasis{ARG}{]}}] \leavevmode
|
|
Packit |
fd8b60 |
Include \sphinxstyleemphasis{FEATURE} {[}ARG=yes{]}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-maintainer-mode}}] \leavevmode
|
|
Packit |
fd8b60 |
Enable rebuilding of source files, Makefiles, etc.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-delayed-initialization}}] \leavevmode
|
|
Packit |
fd8b60 |
Initialize library code when loaded. Defaults to delay until
|
|
Packit |
fd8b60 |
first use.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-thread-support}}] \leavevmode
|
|
Packit |
fd8b60 |
Don’t enable thread support. Defaults to enabled.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-rpath}}] \leavevmode
|
|
Packit |
fd8b60 |
Suppress run path flags in link lines.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-athena}}] \leavevmode
|
|
Packit |
fd8b60 |
Build with MIT Project Athena configuration.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-kdc-lookaside-cache}}] \leavevmode
|
|
Packit |
fd8b60 |
Disable the cache which detects client retransmits.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-pkinit}}] \leavevmode
|
|
Packit |
fd8b60 |
Disable PKINIT plugin support.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-disable-aesni}}] \leavevmode
|
|
Packit |
fd8b60 |
Disable support for using AES instructions on x86 platforms.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-enable-asan}{[}=\sphinxstyleemphasis{ARG}{]}}] \leavevmode
|
|
Packit |
fd8b60 |
Enable building with asan memory error checking. If \sphinxstyleemphasis{ARG} is
|
|
Packit |
fd8b60 |
given, it controls the -fsanitize compilation flag value (the
|
|
Packit |
fd8b60 |
default is “address”).
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Optional packages}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:optional-packages}}\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-}\sphinxstyleemphasis{PACKAGE}{[}=ARG{]}}] \leavevmode
|
|
Packit |
fd8b60 |
Use \sphinxstyleemphasis{PACKAGE} (e.g., \sphinxcode{-{-}with-imap}). The default value of \sphinxstyleemphasis{ARG}
|
|
Packit |
fd8b60 |
is \sphinxcode{yes}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-without-}\sphinxstyleemphasis{PACKAGE}}] \leavevmode
|
|
Packit |
fd8b60 |
Do not use \sphinxstyleemphasis{PACKAGE} (same as \sphinxcode{-{-}with-PACKAGE=no})
|
|
Packit |
fd8b60 |
(e.g., \sphinxcode{-{-}without-libedit}).
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-size-optimizations}}] \leavevmode
|
|
Packit |
fd8b60 |
Enable a few optimizations to reduce code size possibly at some
|
|
Packit |
fd8b60 |
run-time cost.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-et}}] \leavevmode
|
|
Packit |
fd8b60 |
Use the com\_err library and compile\_et utility that are already
|
|
Packit |
fd8b60 |
installed on the system, instead of building and installing
|
|
Packit |
fd8b60 |
local versions.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-ss}}] \leavevmode
|
|
Packit |
fd8b60 |
Use the ss library and mk\_cmds utility that are already installed
|
|
Packit |
fd8b60 |
on the system, instead of building and using private versions.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-db}}] \leavevmode
|
|
Packit |
fd8b60 |
Use the berkeley db utility already installed on the system,
|
|
Packit |
fd8b60 |
instead of using a private version. This option is not
|
|
Packit |
fd8b60 |
recommended; enabling it may result in incompatibility with key
|
|
Packit |
fd8b60 |
databases originating on other systems.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-netlib=}\sphinxstyleemphasis{LIBS}}] \leavevmode
|
|
Packit |
fd8b60 |
Use the resolver library specified in \sphinxstyleemphasis{LIBS}. Use this variable
|
|
Packit |
fd8b60 |
if the C library resolver is insufficient or broken.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-hesiod=}\sphinxstyleemphasis{path}}] \leavevmode
|
|
Packit |
fd8b60 |
Compile with Hesiod support. The \sphinxstyleemphasis{path} points to the Hesiod
|
|
Packit |
fd8b60 |
directory. By default Hesiod is unsupported.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-ldap}}] \leavevmode
|
|
Packit |
fd8b60 |
Compile OpenLDAP database backend module.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-lmdb}}] \leavevmode
|
|
Packit |
fd8b60 |
Compile LMDB database backend module.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-tcl=}\sphinxstyleemphasis{path}}] \leavevmode
|
|
Packit |
fd8b60 |
Specifies that \sphinxstyleemphasis{path} is the location of a Tcl installation.
|
|
Packit |
fd8b60 |
Tcl is needed for some of the tests run by ‘make check’; such tests
|
|
Packit |
fd8b60 |
will be skipped if this option is not set.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-vague-errors}}] \leavevmode
|
|
Packit |
fd8b60 |
Do not send helpful errors to client. For example, if the KDC
|
|
Packit |
fd8b60 |
should return only vague error codes to clients.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-crypto-impl=}\sphinxstyleemphasis{IMPL}}] \leavevmode
|
|
Packit |
fd8b60 |
Use specified crypto implementation (e.g., \sphinxstylestrong{-}\sphinxstylestrong{-with-crypto-impl=}\sphinxstyleemphasis{openssl}). The default is the native MIT
|
|
Packit |
fd8b60 |
Kerberos implementation \sphinxcode{builtin}. The other currently
|
|
Packit |
fd8b60 |
implemented crypto backend is \sphinxcode{openssl}. (See
|
|
Packit |
fd8b60 |
\DUrole{xref,std,std-ref}{mitK5features})
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-prng-alg=}\sphinxstyleemphasis{ALG}}] \leavevmode
|
|
Packit |
fd8b60 |
Use specified PRNG algorithm. For example, to use the OS native
|
|
Packit |
fd8b60 |
prng specify \sphinxcode{-{-}with-prng-alg=os}. The default is \sphinxcode{fortuna}.
|
|
Packit |
fd8b60 |
(See \DUrole{xref,std,std-ref}{mitK5features})
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-without-libedit}}] \leavevmode
|
|
Packit |
fd8b60 |
Do not compile and link against libedit. Some utilities will no
|
|
Packit |
fd8b60 |
longer offer command history or completion in interactive mode if
|
|
Packit |
fd8b60 |
libedit is disabled.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-readline}}] \leavevmode
|
|
Packit |
fd8b60 |
Compile and link against GNU readline, as an alternative to libedit.
|
|
Packit |
fd8b60 |
Building with readline breaks the dejagnu test suite, which is a
|
|
Packit |
fd8b60 |
subset of the tests run by ‘make check’.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-system-verto}}] \leavevmode
|
|
Packit |
fd8b60 |
Use an installed version of libverto. If the libverto header and
|
|
Packit |
fd8b60 |
library are not in default locations, you may wish to specify
|
|
Packit |
fd8b60 |
\sphinxcode{CPPFLAGS=-I/some/dir} and \sphinxcode{LDFLAGS=-L/some/other/dir} options
|
|
Packit |
fd8b60 |
at configuration time as well.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
If this option is not given, the build system will try to detect
|
|
Packit |
fd8b60 |
an installed version of libverto and use it if it is found.
|
|
Packit |
fd8b60 |
Otherwise, a version supplied with the Kerberos sources will be
|
|
Packit |
fd8b60 |
built and installed. The built-in version does not contain the
|
|
Packit |
fd8b60 |
full set of back-end modules and is not a suitable general
|
|
Packit |
fd8b60 |
replacement for the upstream version, but will work for the
|
|
Packit |
fd8b60 |
purposes of Kerberos.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
Specifying \sphinxstylestrong{-}\sphinxstylestrong{-without-system-verto} will cause the built-in
|
|
Packit |
fd8b60 |
version of libverto to be used unconditionally.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-with-krb5-config=}\sphinxstyleemphasis{PATH}}] \leavevmode
|
|
Packit |
fd8b60 |
Use the krb5-config program at \sphinxstyleemphasis{PATH} to obtain the build-time
|
|
Packit |
fd8b60 |
default credential cache, keytab, and client keytab names. The
|
|
Packit |
fd8b60 |
default is to use \sphinxcode{krb5-config} from the program path. Specify
|
|
Packit |
fd8b60 |
\sphinxcode{-{-}without-krb5-config} to disable the use of krb5-config and
|
|
Packit |
fd8b60 |
use the usual built-in defaults.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{-}\sphinxstylestrong{-without-keyutils}}] \leavevmode
|
|
Packit |
fd8b60 |
Build without libkeyutils support. This disables the KEYRING
|
|
Packit |
fd8b60 |
credential cache type.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\subsection{Examples}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/options2configure:examples}}
|
|
Packit |
fd8b60 |
For example, in order to configure Kerberos on a Solaris machine using
|
|
Packit |
fd8b60 |
the suncc compiler with the optimizer turned on, run the configure
|
|
Packit |
fd8b60 |
script with the following options:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{o}{\PYGZpc{}} \PYG{o}{.}\PYG{o}{/}\PYG{n}{configure} \PYG{n}{CC}\PYG{o}{=}\PYG{n}{suncc} \PYG{n}{CFLAGS}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{O}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
For a slightly more complicated example, consider a system where
|
|
Packit |
fd8b60 |
several packages to be used by Kerberos are installed in
|
|
Packit |
fd8b60 |
\sphinxcode{/usr/foobar}, including Berkeley DB 3.3, and an ss library that
|
|
Packit |
fd8b60 |
needs to link against the curses library. The configuration of
|
|
Packit |
fd8b60 |
Kerberos might be done thus:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{o}{.}\PYG{o}{/}\PYG{n}{configure} \PYG{n}{CPPFLAGS}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{I}\PYG{o}{/}\PYG{n}{usr}\PYG{o}{/}\PYG{n}{foobar}\PYG{o}{/}\PYG{n}{include} \PYG{n}{LDFLAGS}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{L}\PYG{o}{/}\PYG{n}{usr}\PYG{o}{/}\PYG{n}{foobar}\PYG{o}{/}\PYG{n}{lib} \PYGZbs{}
|
|
Packit |
fd8b60 |
\PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{k}{with}\PYG{o}{\PYGZhy{}}\PYG{n}{system}\PYG{o}{\PYGZhy{}}\PYG{n}{et} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{k}{with}\PYG{o}{\PYGZhy{}}\PYG{n}{system}\PYG{o}{\PYGZhy{}}\PYG{n}{ss} \PYG{o}{\PYGZhy{}}\PYG{o}{\PYGZhy{}}\PYG{k}{with}\PYG{o}{\PYGZhy{}}\PYG{n}{system}\PYG{o}{\PYGZhy{}}\PYG{n}{db} \PYGZbs{}
|
|
Packit |
fd8b60 |
\PYG{n}{SS\PYGZus{}LIB}\PYG{o}{=}\PYG{l+s+s1}{\PYGZsq{}}\PYG{l+s+s1}{\PYGZhy{}lss \PYGZhy{}lcurses}\PYG{l+s+s1}{\PYGZsq{}} \PYG{n}{DB\PYGZus{}HEADER}\PYG{o}{=}\PYG{n}{db3}\PYG{o}{/}\PYG{n}{db\PYGZus{}185}\PYG{o}{.}\PYG{n}{h} \PYG{n}{DB\PYGZus{}LIB}\PYG{o}{=}\PYG{o}{\PYGZhy{}}\PYG{n}{ldb}\PYG{o}{\PYGZhy{}}\PYG{l+m+mf}{3.3}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\section{osconf.hin}
|
|
Packit |
fd8b60 |
\label{\detokenize{build/osconf:osconf-hin}}\label{\detokenize{build/osconf::doc}}
|
|
Packit |
fd8b60 |
There is one configuration file which you may wish to edit to control
|
|
Packit |
fd8b60 |
various compile-time parameters in the Kerberos distribution:
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\fvset{hllines={, ,}}%
|
|
Packit |
fd8b60 |
\begin{sphinxVerbatim}[commandchars=\\\{\}]
|
|
Packit |
fd8b60 |
\PYG{n}{include}\PYG{o}{/}\PYG{n}{osconf}\PYG{o}{.}\PYG{n}{hin}
|
|
Packit |
fd8b60 |
\end{sphinxVerbatim}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
The list that follows is by no means complete, just some of the more
|
|
Packit |
fd8b60 |
interesting variables.
|
|
Packit |
fd8b60 |
\begin{description}
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DEFAULT\_PROFILE\_PATH}}] \leavevmode
|
|
Packit |
fd8b60 |
The pathname to the file which contains the profiles for the known
|
|
Packit |
fd8b60 |
realms, their KDCs, etc. The default value is \sphinxcode{/etc/krb5.conf}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DEFAULT\_KEYTAB\_NAME}}] \leavevmode
|
|
Packit |
fd8b60 |
The type and pathname to the default server keytab file. The
|
|
Packit |
fd8b60 |
default is \DUrole{xref,std,std-ref}{DEFKTNAME}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DEFAULT\_KDC\_ENCTYPE}}] \leavevmode
|
|
Packit |
fd8b60 |
The default encryption type for the KDC database master key. The
|
|
Packit |
fd8b60 |
default value is \sphinxcode{aes256-cts-hmac-sha1-96}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{RCTMPDIR}}] \leavevmode
|
|
Packit |
fd8b60 |
The directory which stores replay caches. The default is
|
|
Packit |
fd8b60 |
\sphinxcode{/var/tmp}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\item[{\sphinxstylestrong{DEFAULT\_KDB\_FILE}}] \leavevmode
|
|
Packit |
fd8b60 |
The location of the default database. The default value is
|
|
Packit |
fd8b60 |
\DUrole{xref,std,std-ref}{LOCALSTATEDIR}\sphinxcode{/krb5kdc}\sphinxcode{/principal}.
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\end{description}
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
\renewcommand{\indexname}{Index}
|
|
Packit |
fd8b60 |
\printindex
|
|
Packit |
fd8b60 |
\end{document}
|