source: trunk/third/xntp/html/build.html @ 10832

Revision 10832, 7.1 KB checked in by brlewis, 27 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r10831, which included commits to RCS files with non-trunk default branches.
Line 
1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML Strict//EN">
2<html><head><title>
3Building and Installing the Distribution
4</title></head><body><h3>
5Building and Installing the Distribution
6</h3><hr>
7
8<p>Following are instructions to build and install the programs in this
9distribution.
10
11<p>Note that the automatic build process inspects the machine
12environment and tests for the presence of system header files and the
13contents of these files to determine if certain features are available.
14When one or more of these features are present, the code is compiled to
15use them; if not, no special code is compiled. However, even if the code
16is compiled to use these features, the code does a special test at run
17time to see if one or more are actually present and avoids using them if
18not present. In such cases a warning message is sent to the system log,
19but the daemon should still work properly.
20
21<p><h4>Building and Installing under Unix</h4>
22
23<p>Make sure that you have all necessary tools for building executables.
24These tools include <code>cc/gcc, make, awk, sed, tr, sh, grep,
25egrep</code> and a few others. Not all of these tools exist in the
26standard distribution of modern Unix versions (compilers are likely to
27be an add-on product - consider using the <code>gnu</code> tools and
28<code>gcc</code> compiler in this case). For a successful build, all of
29these tools should be accessible via the current path.
30
31<h5>Configuration</h5>
32
33<p>Use the <code>configure</code> command to perform an automatic
34configuration procedure. This procedure normally includes the debugging
35code, which can be useful in diagnosing problems found in initial test,
36and all reference clock drivers known to work with each machine and
37operating system. Unless memory space is at a premium, this is a
38sensible strategy and saves lots of messy fiddling. If you need to
39delete either the debugging code or one or more or all reference clock
40drivers to save space, see the <a href=config.html>Configuration
41Options</a> page.
42
43<p>If your site supports multiple architectures and uses NFS to share
44files, you can use a single source tree to compile executables for all
45architectures. While running on a target architecture machine and with
46the distribution base directory active, create a subdirectory using a
47command like <code>mkdir `config.guess`</code>, which will create an
48architecture-specific directory with name peculiar to the architecture
49and operating system. Then change to this directory and configure with
50the <code>../configure</code> command. The remaining steps are the same
51whether building in the base directory or in the subdirectory.
52
53<h5>Compilation</h5>
54
55<p>Use the <code>make</code> command to compile all source modules,
56construct the libraries and link the distribution. Expect few or no
57warnings using <code>cc</code> and a moderate level of warnings using
58<code>gcc</code>. Note: On some Unix platforms the use of
59<code>gcc</code> can result in quite a few complaints about system
60header files and type inconsistencies, especially about pointer
61variables. This is usually the case when the system header files are not
62up to ANSI standards or <code>gcc</code>-isms. While the autoconfigure
63process is quite thorough, the Unix programming cultures of the various
64workstation makers still remain idiosyncratic.
65
66<h5>Installation</h5>
67<p>As root, use the <code>make install</code> command to install the
68binaries in the destination directory. You must of course have write
69permission on the install destination directory. This includes the
70programs <a href="xntpd.html"><code>xntpd</code></a> (the daemon), <a
71href="xntpdc.html"><code>xntpdc</code></a> (an <code>xntpd</code>-
72dependent query program), <a href="ntpq.html"><code>ntpq</code></a> (a
73standard query program), <a href="ntpdate.html"><code>ntpdate</code></a>
74(an <code>rdate</code> replacement for boot time date setting and sloppy
75time keeping) and <a href="ntptrace.html"><code>ntptrace</code></a> (a
76utility useful to find the primary (stratum-1) servers). In some
77systems, the <a href="tickadj.html"><code>tickadj</code></a> (a utility
78useful to adjust kernel variables) is installed. If the precision time
79kernel modifications are present, the <a
80href="ntptime.html"><code>ntptime</code></a> (a utility useful to debug
81kernel time functions) is installed.
82
83<p>You are now ready to configure the daemon and start it. You will need
84to create a NTP configuration file <code>ntp.conf</code> and possibly a
85cryptographic key file <code>ntp.keys</code>. Directions for doing that
86are in the <a href="notes.html">Notes on Configuring NTP and Setting up
87a NTP Subnet</a>. A tutorial on debugging technique is in <a
88href="debug.html">NTP Debugging Technique</a>. If problems peculiar to
89the particular hardware and software environment are suspected, browse
90the <a href="http:hints.html">Hints and Kinks</a> page.
91
92<p>Bug reports of a general nature can be sent to David Mills
93(mills@udel.edu). Bug reports of a specific nature on features
94implemented by the programmer corps mentioned in the <a
95href="copyright.html">Copyright</a> page should be sent directly to the
96implementor listed in that page, with copy to mills@udel.edu.
97
98<p><strong>Please include the version of the source distribution (e.g.,
99xntp3-5.87) in your bug report.</strong>
100
101<p><strong>Please include the output of <code>config.guess</code> in
102your bug report.</strong>
103
104<p><strong>It will look something like:
105<code>pdp11-dec-fuzzos3.4</code></strong>
106
107<p>Additional <code>make</code> commands
108
109<dl>
110
111<dt><code>make clean</code>
112<dd>Cleans out object files, programs and temporary files.
113
114<p><dt><code>make distclean</code>
115<dd>Does the work of <code>clean</code>, but cleans out all directories
116in preparation for a new distribution release.
117
118<p><dt><code>make dist</code>
119<dd>Does the work of <code>make distclean</code>, but constructs
120compressed tar files for distribution. You must have GNU automake to
121perform this function.
122
123</dl>
124
125<p><h4>Building and Installing under Windows NT</h4>
126
127<p>Under Windows NT, you will need <code>Visual C++ 4.0</code> or above,
128<code>InstallShield</code> SDK (comes with <code>VC++</code>),
129<code>Perl5</code> and some version of the archiving program
130<code>ZIP</code>.
131
132<p>See the <code>./scripts/wininstall/readme.nt</code> file for
133directions to compile the sources, build the libraries and link the
134executables. Initiate the build by running either <code>bldrel.bat</code>
135or <code>blddbg.bat</code> to compile all of the source and create an
136<code>InstallShield</code> based graphical installation package.
137
138<p>To install the executables, make sure that you are logged in as a
139system account, or one with administrator privileges such as the
140"administrator" account. As part of the build an
141<code>InstallShield</code> based graphical installer was created. Run
142<code>\xntp\scripts\wininstall\intel\disk1\setup.exe</code> to begin the
143installation. This installer will prompt for basic defaults, copy the
144binaries, install the service, and start it up.  The other option is
145to run <code>\xntp\scripts\wininstall\distrib\install.bat</code> which
146will do the basic installation from the command line.
147
148<hr><address>David L. Mills (mills@udel.edu)</address></body></html>
Note: See TracBrowser for help on using the repository browser.