1<html>
2<body>
3
4<h1 align='right'><a name='INSTALL'><img src="1.gif" align="right"
5hspace="10" width="100" height="100" alt="1"></a>Building,
6Installing, and Packaging Mini-XML</h1>
7
8<p>This chapter describes how to build, install, and package
9Mini-XML on your system from the source archive. You will need an
10ANSI/ISO-C compatible compiler to build Mini-XML - GCC works, as
11do most vendors' C compilers. If you are building Mini-XML on
12Windows, we recommend using the Visual C++ environment with the
13supplied solution file. For other operating systems, you'll need a
14POSIX-compatible shell and <tt>make</tt> program in addition to
15the C compiler.</p>
16
17<h2>Compiling Mini-XML</h2>
18
19<p>Mini-XML comes with both an autoconf-based configure script
20and a Visual C++ solution that can be used to compile the library
21and associated tools.</p>
22
23<h3>Compiling with Visual C++</h3>
24
25<p>Open the <VAR>mxml.sln</VAR> solution in the <VAR>vcnet</VAR>
26folder. Choose the desired build configuration, "Debug" (the
27default) or "Release", and then choose <VAR>Build Solution</VAR>
28from the <VAR>Build</VAR> menu.</p>
29
30<h3>Compiling with Command-Line Tools</h3>
31
32<p>Type the following command to configure the Mini-XML source
33code for your system:</p>
34
35<pre>
36    <kbd>./configure ENTER</kbd>
37</pre>
38
39<p>The default install prefix is <var>/usr/local</var>, which
40can be overridden using the <kbd>--prefix</kbd> option:</p>
41
42<pre>
43    <kbd>./configure --prefix=/foo ENTER</kbd>
44</pre>
45
46<p>Other configure options can be found using the
47<kbd>--help</kbd> option:</p>
48
49<pre>
50    <kbd>./configure --help ENTER</kbd>
51</pre>
52
53<p>Once you have configured the software, use the
54<tt>make(1)</tt> program to do the build and run the test
55program to verify that things are working, as follows:</p>
56
57<pre>
58    <kbd>make ENTER</kbd>
59</pre>
60
61
62<h2>Installing Mini-XML</h2>
63
64<p>If you are using Visual C++, copy the <VAR>mxml.lib</VAR> and
65and <VAR>mxml.h</VAR> files to the Visual C++ <VAR>lib</VAR> and
66<VAR>include<VAR> directories, respectively.</p>
67
68<p>Otherwise, use the <tt>make</tt> command with the
69<kbd>install</kbd> target to install Mini-XML in the configured
70directories:</p>
71
72<pre>
73    <kbd>make install ENTER</kbd>
74</pre>
75
76
77<h2>Creating Mini-XML Packages</h2>
78
79<p>Mini-XML includes two files that can be used to create binary
80packages. The first file is <var>mxml.spec</var> which is used
81by the <tt>rpmbuild(8)</tt> software to create Red Hat Package
82Manager ("RPM") packages which are commonly used on Linux. Since
83<tt>rpmbuild</tt> wants to compile the software on its own, you
84can provide it with the Mini-XML tar file to build the
85package:</p>
86
87<pre>
88    <kbd>rpmbuild -ta mxml-<i>version</i>.tar.gz ENTER</kbd>
89</pre>
90
91<p>The second file is <var>mxml.list</var> which is used by the
92<tt>epm(1)</tt> program to create software packages in a variety
93of formats. The <tt>epm</tt> program is available from the
94following URL:</p>
95
96<pre>
97    <a href="http://www.epmhome.org/">http://www.epmhome.org/</a>
98</pre>
99
100<p>Use the <tt>make</tt> command with the <kbd>epm</kbd> target
101to create portable and native packages for your system:</p>
102
103<pre>
104    <kbd>make epm ENTER</kbd>
105</pre>
106
107<p>The packages are stored in a subdirectory named
108<var>dist</var> for your convenience. The portable packages
109utilize scripts and tar files to install the software on the
110target system. After extracting the package archive, use the
111<var>mxml.install</var> script to install the software.</p>
112
113<p>The native packages will be in the local OS's native format:
114RPM for Red Hat Linux, DPKG for Debian Linux, PKG for Solaris,
115and so forth. Use the corresponding commands to install the
116native packages.</p>
117
118</body>
119</html>
120