<h3>Build Options</h3>
<img src="pic/pogo3a.gif" alt="gif" align="left"><a href="http://www.eecis.udel.edu/~mills/pictures.html">from <i>Pogo</i>, Walt Kelly</a>
<p>Gnu autoconfigure tools are in the backpack.</p>
- <p>Last update: <csobj format="ShortTime" h="25" locale="00000409" region="0" t="DateTime" w="61">04:01</csobj> UTC <csobj format="LongDate" h="25" locale="00000409" region="0" t="DateTime" w="250">Sunday, March 02, 2008</csobj></p>
- <br clear="left">
- <h4>Table of Contents</h4>
- <ul>
- <li class="inline"><a href="#basic">Basic Build Options - the <tt>configure</tt> utility</a>
- <li class="inline"><a href="#opt">Options</a>
- <li class="inline"><a href="#dir">Directory and File Names</a>
- <li class="inline"><a href="#host">Host Type</a>
- <li class="inline"><a href="#pkg">Optional Packages</a>
- <li class="inline"><a href="#feat">Optional Features</a>
- <li class="inline"><a href="#radio">Radio Clocks</a>
- <li class="inline"><a href="#parse">PARSE Clocks</a>
- </ul>
- <hr>
- <h4 id="basic">Basic Build Options - the <tt>configure</tt> Utility</h4>
- <p>The following options are for compiling and installing a working version of the NTP distribution. In most cases, the build process is completely automatic. In some cases where memory space is at a premium, or the binaries are to be installed in a different place, it is possible to tailor the configuration to remove such features as reference clock driver support, debugging support, and so forth.</p>
- <p>Configuration options are specified as arguments to the <tt>configure</tt> script. Following is a summary of the current options, as of the 4.0.99m version:</p>
- <p>Usage: <tt>configure [options] [host]</tt><br>
- </p>
- <h4 id="opt">Options</h4>
- <p><tt>[defaults in brackets after descriptions]</tt> Configuration:</p>
- <pre>
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print `checking...' messages
- --version print the version of autoconf that created
-configure
-</pre>
- <h4 id="dir">Directory and File Names</h4>
- <pre>
- --prefix=PREFIX install architecture-independent files in PREFIX [/usr/local]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM run sed PROGRAM on installed program names
-</pre>
- <h4 id="host">Host Type</h4>
- <pre>
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-</pre>
- <h4 id="pkg">Optional Packages</h4>
- <pre>
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
-
- openssl-libdir=DIR OpenSSL object code libraries in DIR [/usr/lib/usr/local/lib/usr/local/ssl/lib]
- openssl-incdir=DIR OpenSSL header files in DIR [/usr/include/usr/local/include/usr/local/ssl/include]
- crypto=autokey Use autokey cryptography
- crypto=rsaref Use the RSAREF library
- electricfence Compile with ElectricFence malloc debugger
-</pre>
- <h4 id="feat">Optional Features</h4>
- <pre>
- --disable-FEATURE do not include FEATURE (same as
- --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
-
- accurate-adjtime The adjtime() call is accurate
- clockctl use /dev/clockctl (non root control of system clock)
- debugging Include debugging code [enable]
- des Include support for DES keys [enable]
- dst-minutes=VALUE Minutes per DST adjustment [60]
- gdt-surveying Include GDT survey code [disable]
- hourly-todr-sync If we should sync TODR hourly
- kernel-fll-bug If we should avoid a (Solaris) kernel FLL bug
- kmem Read /dev/kmem for 'tick' and/or 'tickadj'
- md5 Include support for MD5 keys [enable]
- ntpdate-step If ntpdate should step the time
- slew-always Always slew the time
- step-slew Step and slew the time
- tick=VALUE Force a value for 'tick'
- tickadj=VALUE Force a value for 'tickadj'
- udp-wildcard Use UDP wildcard delivery
-</pre>
- <h4 id="radio">Radio Clocks</h4>
- <p>(these are ordinarily enabled, if supported by the machine and operating system):</p>
- <pre>
- all-clocks Include drivers for all suitable non-PARSE clocks [enable]
- ACTS NIST dialup clock
- ARBITER Arbiter 1088A/B GPS receiver
- ARCRON_MSF Arcron MSF receiver
- AS2201 Austron 2200A or 2201A GPS receiver
- ATOM ATOM PPS interface
- AUDIO-CHU CHU audio decoder
- BANCOMM Datum/Bancomm BC635/VME interface (requires an explicit --enable-BANCOMM request)
- CHRONOLOG Chrono-log K-series WWVB receiver
- CHU CHU modem decoder
- DATUM Datum Programmable Time System
- DUMBCLOCK Dumb generic hh:mm:ss local clock
- FG Forum Graphic GPS
- GPSVME TrueTime GPS receiver with VME interface (requires an explicit --enable-GPSVME request)
- HEATH HeathKit GC-1000 Most Accurate Clock
- HOPFPCI HOPF 6039 PCI board
- HOPFSERIAL HOPF serial clock device
- HPGPS HP 58503A GPS Time & Frequency receiver
- IRIG IRIG (Audio) Clock
- JUPITER Rockwell Jupiter GPS receiver
- LEITCH Leitch CSD 5300 Master Clock System Driver
- LOCAL-CLOCK Local clock driver
- MSFEES EES M201 MSF receiver
- MX4200 Magnavox MX4200 GPS receiver
- NMEA NMEA GPS receiver
- ONCORE Motorola VP/UT Oncore GPS receiver
- PALISADE Palisade clock
- PCF Conrad parallel port radio clock
- PST PST/Traconex 1020 WWV/H receiver
- PTBACTS PTB dialup clock support
- SHM Clock attached through shared memory (requires an explicit --enable-SHM request)
- SPECTRACOM Spectracom 8170/Netclock/2 WWVB receiver
- TRAK TRAK 8810 GPS station clock
- TPRO KSI/Odetics TPRO/S IRIG Interface
- TRUETIME Kinemetrics/TrueTime (generic) receiver
- ULINK Ultralink WWVB receiver
- USNO US Naval Observatory dialup clock
- WWV WWV audio receiver
-</pre>
- <h4 id="parse">PARSE Clocks</h4>
- <pre>
- parse-clocks Include drivers for all suitable PARSE clocks [enable]
- COMPUTIME Diem Computime Radio Clock
- DCF7000 ELV/DCF7000 Clock
- HOPF6021 HOPF 6021 Radio Clock support
- MEINBERG Meinberg clocks
- RAWDCF DCF77 raw time code
- RCC8000 RCC 8000 Radio Clock support
- SCHMID SCHMID DCF77 clock support
- TRIMTAIP Trimble GPS/TAIP Protocol
- TRIMTSIP Trimble GPS/TSIP Protocol
- VARITEXT VARITEXT clock
- WHARTON Wharton 400A Series clock
-</pre>
+ <p>Last update: <csobj format="ShortTime" h="25" locale="00000409" region="0" t="DateTime" w="61">Monday,
+ December 15, 2008 20:54</csobj> UTC<csobj format="LongDate" h="25" locale="00000409" region="0" t="DateTime" w="250"></csobj></p>
+<br clear="left">
<hr>
+ <p>Most modern software distributions include an autoconfigure utility which
+ cutomizes the build and install configuration according to the specific
+ hardware, operating system and file system conventions. For NTP this
+ utility is called <tt>configure</tt>, which is run before building and installing
+ the program components. For most installations no additional actions
+ are required other than running <tt>configure</tt> with no options.
+ However, it is possible to customize the build and install configuration
+ through the use of <tt>configure</tt> options.</p>
+ <p>The available options, together with
+ a concise description, can be displayed by running <tt>configure</tt> with
+ the <tt>--help</tt> option. Various options can be used to reduce the memory
+ footprint, adjust the scheduling priority, enable or disable debugging
+ support or reference clock driver support. The options can be used
+ to specify where to install the program components or where to find
+ various libraries if they are not in the default place.</p>
+<hr>
<script type="text/javascript" language="javascript" src="scripts/footer.txt"></script>
</body>
<p>In scenarios where a considerable amount of data are to be downloaded or uploaded over telephone modems, timekeeping quality can be seriously degraded. This occurs because the differential delays on the two directions of transmission can be quite large. In many cases the apparent time errors are so large as to exceed the step threshold and a step correction can occur during and after the data transfer.</p>
<p>The huff-n'-puff filter is designed to correct the apparent time offset in these cases. It depends on knowledge of the propagation delay when no other traffic is present, such as during other than work hours. The filter remembers the minimum delay over the most recent interval measured usually in hours. Under conditions of severe delay, the filter corrects the apparent offset using the sign of the offset and the difference between the apparent delay and minimum delay. The name of the filter reflects the negative (huff) and positive (puff) correction, which depends on the sign of the offset. The filter is activated by the <tt>tinker huffpuff</tt> command, as described in the <a href="miscopt.html">Miscellaneous Options</a> page.</p>
<h4 id="leap">Leap Second Processing</h4>
- <p>As provided by international agreement, an extra second is sometimes inserted in Coordinated Universal Time (UTC) at the end of a selected month, usually June or December. The National Institutes of Standards and Technology (NIST) provides an historic leapseconds file at <tt>time.nist.gov</tt> for retrieval via FTP. When this file, usually called <tt>ntp.leapseconds</tt>, is installed, <tt>ntpd</tt> reads it at startup and initializes three leapsecond values: the NTP seconds at the next leap event, the offset of UTC relative to International Atomic Time (TAI) after the leap and the NTP seconds when the leapseconds file expires.</p>
- <p>If a host does not have the leapsecond values, they can be obtained over the net using the Autokey security protocol. Ordinarily, the leapseconds file is installed on the primary servers and the values flow from them via secondary servers to the clients. When multiple servers are involved, the values with the latest expiration time are used.</p>
+ <p>As provided by international agreement, an extra second is sometimes inserted
+ in Coordinated Universal Time (UTC) at the end of a selected month,
+ usually June or December. The National Institutes of Standards and
+ Technology (NIST) provides an historic leapseconds file at <tt>time.nist.gov</tt> for
+ retrieval via FTP. When this file, usually called <tt>ntp-leapseconds.list</tt>,
+ is copied and installed in a directory.
+ The <tt>leapfile</tt> configuration command specifies the path to
+ this file. At startup, <tt>ntpd</tt> reads
+ it and initializes three leapsecond values: the NTP seconds
+ at the next leap event, the offset of UTC relative to International
+ Atomic Time (TAI) after the leap and the NTP seconds when the leapseconds
+ file expires and should be retrieved again.</p>
+ <p>If a host does not have the leapsecond values, they can be obtained over the net using the Autokey security protocol. Ordinarily, the leapseconds file is installed on the primary servers and the values flow from them via secondary servers to the clients. When multiple servers are involved, the values with the latest expiration time are used.</p>
<p>If the latest leap is in the past, nothing further is done other than to install the TAI offset. If the leap is in the future less than 28 days, the leap warning bits are set. If in the future less than 23 hours, the kernel is armed to insert one second at the end of the current day. If the kernel is enabled, the leap is done automatically at that time; otherwise, the clock is effectively stopped for one second at the leap. Additional details are in the <a href='http://www.eecis.udel.edu/~mills/leap.html'>The NTP Timescale and Leap Seconds</a> white paper</p>
- <p>Dependent servers and clients tally the leap warning bits of surviving servers and reference clocks. When a majority of the survivors show warning, a leap is programmed at the end of the current month. During the month and day of insertion, they operate as above. In this way the leap is propagated at all dependent servers and clients.</p>
- <h4 id="notes">Additional Features</h4>
+ <p>If none of the above provisions are available, dsependent servers and clients
+ tally the leap warning bits of surviving servers and reference clocks.
+ When a majority of the survivors show warning, a leap is programmed
+ at the end of the current month. During the month and day of insertion,
+ they operate as above. In this way the leap is is propagated at all
+ dependent servers and clients.</p>
+ <h4 id="notes">Additional Features</h4>
<p>A new experimental feature called interleaved modes can be used in NTP
symmetric or broadcast modes. It is designed to improve accuracy
by avoiding kernel latency and queueing delay, as described on the <a href="xleave.html">NTP
as interleaved clients at the same time. Further details are in the
white paper <a href="http://www.eecis.udel.edu/~mills/onwire.html">NTP
Interleaved On-Wire Protocol</a> and the briefing <a href="http://www.eecis.udel.edu/~mills/database/brief/onwire/onwire.ppt">Interleaved
- Synchroization Protocols for LANs and Space Data Links</a>.</p>
+ Synchronization Protocols for LANs and Space Data Links</a>.</p>
<p>If <tt>ntpd</tt>, is configured with NetInfo support, it will attempt to read its configuration from the NetInfo service if the default <tt>ntp.conf</tt> file cannot be read and no file is specified by the <tt>-c</tt> option.</p>
<p>In contexts where a host name is expected, a <tt>-4</tt> qualifier preceding the host name forces DNS resolution to the IPv4 namespace, while a <tt>-6</tt> qualifier forces DNS resolution to the IPv6 namespace.</p>
<p>Various internal <tt>ntpd</tt> variables can be displayed and configuration options altered while the <tt>ntpd</tt> is running using the <tt><a href="ntpq.html">ntpq</a></tt> and <tt><a href="ntpdc.html">ntpdc</a></tt> utility programs.</p>