1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265
|
<HTML>
<HEAD>
<!-- This HTML file has been created by texi2html 1.29
from ../tnf/sysadmin.tnf on 12 Febuary 2003 -->
<TITLE>Eli System Administration Guide - Installing Eli</TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000EE" VLINK="#551A8B" ALINK="#FF0000" BACKGROUND="gifs/bg.gif">
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0" VALIGN=BOTTOM>
<TR VALIGN=BOTTOM>
<TD WIDTH="160" VALIGN=BOTTOM><IMG SRC="gifs/elilogo.gif" BORDER=0> </TD>
<TD WIDTH="25" VALIGN=BOTTOM><img src="gifs/empty.gif" WIDTH=25 HEIGHT=25></TD>
<TD ALIGN=LEFT WIDTH="600" VALIGN=BOTTOM><IMG SRC="gifs/title.gif"></TD>
</TR>
</TABLE>
<HR size=1 noshade width=785 align=left>
<TABLE BORDER=0 CELLSPACING=2 CELLPADDING=0>
<TR>
<TD VALIGN=TOP WIDTH="160">
<h4>General Information</h4>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="index.html">Eli: Translator Construction Made Easy</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="gindex_toc.html">Global Index</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="faq_toc.html" >Frequently Asked Questions</a> </td></tr>
</table>
<h4>Tutorials</h4>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="EliRefCard_toc.html">Quick Reference Card</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="novice_toc.html">Guide For new Eli Users</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="news_toc.html">Release Notes of Eli</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="nametutorial_toc.html">Tutorial on Name Analysis</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="typetutorial_toc.html">Tutorial on Type Analysis</a></td></tr>
</table>
<h4>Reference Manuals</h4>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="ui_toc.html">User Interface</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="pp_toc.html">Eli products and parameters</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="lidoref_toc.html">LIDO Reference Manual</a></td></tr>
</table>
<h4>Libraries</h4>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="lib_toc.html">Eli library routines</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="modlib_toc.html">Specification Module Library</a></td></tr>
</table>
<h4>Translation Tasks</h4>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="lex_toc.html">Lexical analysis specification</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="syntax_toc.html">Syntactic Analysis Manual</a></td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="comptrees_toc.html">Computation in Trees</a></td></tr>
</table>
<h4>Tools</h4>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="lcl_toc.html">LIGA Control Language</a> </td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="show_toc.html">Debugging Information for LIDO</a> </td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="gorto_toc.html">Graphical ORder TOol</a> </td></tr>
</table>
<p>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="fw_toc.html">FunnelWeb User's Manual</a> </td></tr>
</table>
<p>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="ptg_toc.html">Pattern-based Text Generator</a> </td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="deftbl_toc.html">Property Definition Language</a> </td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="oil_toc.html">Operator Identification Language</a> </td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="tp_toc.html">Tree Grammar Specification Language</a> </td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="clp_toc.html">Command Line Processing</a> </td></tr>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="cola_toc.html">COLA Options Reference Manual</a> </td></tr>
</table>
<p>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="idem_toc.html">Generating Unparsing Code</a> </td></tr>
</table>
<p>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="mon_toc.html">Monitoring a Processor's Execution</a> </td></tr>
</table>
<h4>Administration</h4>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0>
<tr valign=top><td><img src="gifs/gelbekugel.gif" WIDTH=7 HEIGHT=7 ALT=" o"> </td><td><a href="sysadmin_toc.html">System Administration Guide</a> </td></tr>
</table>
<HR WIDTH="100%">
<CENTER> <A HREF="mailto:elibugs@cs.colorado.edu"><IMG SRC="gifs/button_mail.gif" NOSAVE BORDER=0 HEIGHT=32 WIDTH=32></A><A HREF="mailto:elibugs@cs.colorado.edu">Questions, Comments, ....</A></CENTER>
</TD>
<TD VALIGN=TOP WIDTH="25"><img src="gifs/empty.gif" WIDTH=25 HEIGHT=25></TD>
<TD VALIGN=TOP WIDTH="600">
<H1>Eli System Administration Guide</H1>
<P>
<IMG SRC="gifs/empty.gif" WIDTH=25 HEIGHT=25 ALT=""><A HREF="sysadmin_2.html"><IMG SRC="gifs/next.gif" ALT="Next Chapter" BORDER="0"></A>
<IMG SRC="gifs/empty.gif" WIDTH=25 HEIGHT=25 ALT=""><A HREF="sysadmin_toc.html"><IMG SRC="gifs/up.gif" ALT="Table of Contents" BORDER="0"></A>
<IMG SRC="gifs/empty.gif" WIDTH=25 HEIGHT=25 ALT="">
<HR size=1 noshade width=600 align=left>
<A NAME="IDX2"></A>
<H1><A NAME="SEC1" HREF="sysadmin_toc.html#SEC1">Installing Eli</A></H1>
<A NAME="IDX3"></A>
<P>
Eli is a collection of <DFN>packages</DFN> defining processes needed to build a
translator from specifications.
<A NAME="IDX4"></A>
These processes are managed by an expert system called <DFN>Odin</DFN>.
Odin is designed to manage complex software construction activities of any
kind, and is therefore a stand-alone tool that is completely independent of
Eli.
<P>
The Eli distribution contains a version of Odin that is capable of managing
the Eli software construction process.
That version of Odin will be built automatically when you run
<CODE>configure</CODE> followed by <CODE>make</CODE> in the distribution directory.
<P>
As described in the distribution's <TT>`README'</TT> file, you can use Eli
from the distribution directory without further installation.
Because the distribution directory contains source code, however, it is
much larger than necessary to simply run Eli (see the end of the
distribution's <TT>`README'</TT> file for typical sizes).
Therefore we recommend that you run the <CODE>make install</CODE> command and
then delete the distribution directory.
<P>
Running <CODE>make install</CODE> will install both Odin and the Eli packages in
the directory you specified by the <CODE>--prefix</CODE> parameter when you
configured the distribution.
(Your home directory is used if no <CODE>--prefix</CODE> parameter was supplied
to the <CODE>configure</CODE> command.)
<P>
The installation process will result in the following files and directories
being added to the directory in which Eli is installed (the <TT>`man'</TT>,
<TT>`bin'</TT>, and <TT>`lib'</TT> sub-directories will be created by the
installation process if they don't already exist):
<P>
<DL COMPACT>
<DT><TT>`man/man1/odin.1'</TT>
<DD>Man page for Odin.
<P>
<DT><TT>`bin/odin'</TT>
<DD>Command file to execute Odin with its basic packages.
<P>
<DT><TT>`bin/eli'</TT>
<DD>Command file to execute Odin with the Eli packages added to the basic Odin
packages.
<A NAME="IDX5"></A>
<P>
<DT><TT>`lib/Eli'</TT>
<DD>The Eli package directory.
<A NAME="IDX6"></A>
<P>
<DT><TT>`lib/Odin'</TT>
<DD>The Odin package directory.
</DL>
<P>
These files and directories can be moved to other locations, provided that
certain references are updated to reflect the change:
<P>
<UL>
<LI>
The Odin man page file and the <TT>`eli'</TT> command file can be moved freely
without changing any other file.
<P>
<LI>
If the <TT>`odin'</TT> command file is moved, the <TT>`eli'</TT> command file must
be updated to invoke it from its new location.
<P>
<LI>
If the <TT>`Eli'</TT> package directory is moved, the <TT>`eli'</TT> command file
must be updated to refer to its new location.
<P>
<LI>
If the <TT>`Odin'</TT> package directory is moved, either the <TT>`odin'</TT>
command file must be updated to refer to its new location,
or the environment variable
<A NAME="IDX7"></A>
<CODE>ODINPKGS</CODE> must be set to the full path name of the new location.
</UL>
<P>
If you want to install Eli on multiple architectures, you will need a
separate build for each.
That means running through the configure-make cycle described in the
configuration directory's <TT>`README'</TT> file for each architecture.
Usually a multi-architecture installation has a distinct file system for
multi-architecture software.
That file system is managed in such a way that its name is the same on
every architecture, but the actual storage referenced is
architecture-specific.
Your strategy for such a system is simple:
<P>
<OL>
<LI>
Have the system administrator create a directory in the multi-architecture
file system that is owned by you.
Suppose that directory has the name <TT>`/tools/Eli'</TT>.
<P>
<LI>
For each architecture, go to a machine having that architecture and run the
following sequence of commands:
<P>
<PRE>
./configure --prefix=/tools/Eli
make
make install
make distclean
</PRE>
<P>
<LI>
Put <TT>`/tools/Eli/bin'</TT> in your path.
</OL>
<P>
You will now be able to execute the command <CODE>eli</CODE> on each
architecture.
<P>
If you need a multi-architecture implementation, and space is at a premium,
you can replace multiple copies of architecture-independent files by
symbolic links to a single copy.
Typically, about half of an installed Eli system can be shared.
This implies, for example, that you can have three shared versions
but only consume disk space equivalent to two separate versions.
<A NAME="IDX8"></A>
<P>
The <TT>`elilink'</TT> script in the <TT>`Eli'</TT> sub-directory of the distribution
can be used to set up this sharing:
<P>
<PRE>
elilink <VAR>working-directory</VAR> <VAR>master-directory</VAR>
</PRE>
<P>
<VAR>Master-directory</VAR> is a directory containing an installed version of
Eli which is to be used as the complete master copy. It will be
unchanged by <CODE>elilink</CODE>. <VAR>working-directory</VAR> is <EM>another</EM>
installed version of Eli which is to share files with the master
directory. That is, files in <VAR>working-directory</VAR> which are
identical to their counterparts in <VAR>master-directory</VAR> will be
linked to the master copy. <TT>`Elilink'</TT> produces messages to let you
know what it is doing as it performs the link operations.
<P>
<TT>`Elilink'</TT> calls itself recursively. This means that you will
either need to put the script in a directory that is on your <CODE>PATH</CODE>
or change the script so that it knows where to look. If you want to do
the latter, change the <CODE>ELILINK=</CODE> line near the top of the script
to point to where the script resides.
<P>
<HR size=1 noshade width=600 align=left>
<P>
<IMG SRC="gifs/empty.gif" WIDTH=25 HEIGHT=25 ALT=""><A HREF="sysadmin_2.html"><IMG SRC="gifs/next.gif" ALT="Next Chapter" BORDER="0"></A>
<IMG SRC="gifs/empty.gif" WIDTH=25 HEIGHT=25 ALT=""><A HREF="sysadmin_toc.html"><IMG SRC="gifs/up.gif" ALT="Table of Contents" BORDER="0"></A>
<IMG SRC="gifs/empty.gif" WIDTH=25 HEIGHT=25 ALT="">
<HR size=1 noshade width=600 align=left>
</TD>
</TR>
</TABLE>
</BODY></HTML>
|