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
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!--Converted with LaTeX2HTML 2002-2-1 (1.70)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Configure</TITLE>
<META NAME="description" CONTENT="Configure">
<META NAME="keywords" CONTENT="users_guide">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="users_guide.css">
<LINK REL="next" HREF="node26.html">
<LINK REL="previous" HREF="node24.html">
<LINK REL="up" HREF="node24.html">
<LINK REL="next" HREF="node26.html">
</HEAD>
<BODY >
<DIV CLASS="navigation"><!--Navigation Panel-->
<A NAME="tex2html954"
HREF="node26.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html948"
HREF="node24.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html942"
HREF="node24.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html950"
HREF="node14.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<A NAME="tex2html952"
HREF="node317.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html955"
HREF="node26.html">Make</A>
<B> Up:</B> <A NAME="tex2html949"
HREF="node24.html">Simple Installation</A>
<B> Previous:</B> <A NAME="tex2html943"
HREF="node24.html">Simple Installation</A>
<B> <A NAME="tex2html951"
HREF="node14.html">Contents</A></B>
<B> <A NAME="tex2html953"
HREF="node317.html">Index</A></B>
<BR>
<BR></DIV>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION02111000000000000000"></A><A NAME="671"></A>
<BR>
Configure
</H2>
<P>
There are two main choices to be made at configure time:
``Where does the software get built?'' and
``Where does the software get installed?''. The mechanisms
for effecting these choices are quite different.
<P>
If you want to build software in a separate directory from
where the tarball was untarred, this is called a ``VPATH build''.
VPATH<A NAME="672"></A> builds are useful if you want to build Babel multiple times
with various compilers, flags, or you have a shared filesystem
across multiple platforms. It separates the code you generate
from things that you were given. The downside is that its more
complex to remember where to edit what since original sources will
be in the source directory tree and the generated sources and
compiled assets will be in the build directory tree.
<P>
If you run configure in the directory it appears, (i.e. you typed
<TT><B>./configure</B></TT>) you are performing an ``non-VPATH build''.
To do a VPATH build, simply cd to the directory you want to be
the build directory root, then launch configure from there.
The following sequence demonstrates a vpath build
<BLOCKQUOTE>
<TT> <TT>%</TT> <TT><B>tar zxvf babel-x.x.x.tar.gz</B></TT>
<BR> <TT>%</TT> <TT><B>mkdir babel-linux-build</B></TT>
<BR> <TT>%</TT> <TT><B>cd babel-linux-build</B></TT>
<BR> <TT>%</TT> <TT><B>../babel-x.x.x/configure</B></TT>
<BR>
</TT></BLOCKQUOTE>
<P>
Note that the directory where you build Babel should be
different from the directory where you install Babel.
The default install directory is /usr/local, but can
be set to any directory that you have read/write access to.
To change the install directory<A NAME="680"></A>, run configure with the
<TT><B>-prefix</B></TT><A NAME="682"></A> option. Since many people do not
have root access on their machine (or prefer to install in
a local directory when dealing with unfamiliar software),
this option is probably the second most heavily used
option for configure (first being <TT><B>-help</B></TT>, which
is a good one to try also.)
<P>
At the time of this writing (0.9.3), there are two configure
scripts in Babel, about 40K lines of shell script each.
These configure scripts will then propagate the information they
acquire to Makefiles by perform approximately 190 sed substitutions
(per Makefile), to the source code by setting approximately
170 preprocessor macros in babel_config.h, and various bits of
shell script in the build that do not get propagated to the install
directory. The configure script does not modify any source code in
Babel's runtime system or code generator. This means that source
code generated by a different Babel installation is usable as long
as it gets compiled against the local babel_config.h and linked
with the local Babel runtime libraries.
<P>
<DIV CLASS="navigation"><HR>
<!--Navigation Panel-->
<A NAME="tex2html954"
HREF="node26.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A>
<A NAME="tex2html948"
HREF="node24.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A>
<A NAME="tex2html942"
HREF="node24.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A>
<A NAME="tex2html950"
HREF="node14.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A>
<A NAME="tex2html952"
HREF="node317.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html955"
HREF="node26.html">Make</A>
<B> Up:</B> <A NAME="tex2html949"
HREF="node24.html">Simple Installation</A>
<B> Previous:</B> <A NAME="tex2html943"
HREF="node24.html">Simple Installation</A>
<B> <A NAME="tex2html951"
HREF="node14.html">Contents</A></B>
<B> <A NAME="tex2html953"
HREF="node317.html">Index</A></B> </DIV>
<!--End of Navigation Panel-->
<ADDRESS>
<br><br>babel-0.10.2<br>users_guide Last Modified 2005-03-23<br><br><a href="http://www.llnl.gov/CASC/components">http://www.llnl.gov/CASC/components</a><br><a href="mailto:components@llnl.gov">components@llnl.gov</a>
</ADDRESS>
</BODY>
</HTML>
|