diff options
Diffstat (limited to 'cil/doc/cil002.html')
-rw-r--r-- | cil/doc/cil002.html | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/cil/doc/cil002.html b/cil/doc/cil002.html new file mode 100644 index 00000000..e575ce39 --- /dev/null +++ b/cil/doc/cil002.html @@ -0,0 +1,98 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" + "http://www.w3.org/TR/REC-html40/loose.dtd"> +<HTML> +<HEAD> + + + +<META http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"> +<META name="GENERATOR" content="hevea 1.08"> + +<base target="main"> +<script language="JavaScript"> +<!-- Begin +function loadTop(url) { + parent.location.href= url; +} +// --> +</script> +<LINK rel="stylesheet" type="text/css" href="cil.css"> +<TITLE> +Installation +</TITLE> +</HEAD> +<BODY > +<A HREF="cil001.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A> +<A HREF="ciltoc.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A> +<A HREF="cil003.html"><IMG SRC ="next_motif.gif" ALT="Next"></A> +<HR> + +<H2 CLASS="section"><A NAME="htoc2">2</A> Installation</H2> +You will need OCaml release 3.08 or higher to build CIL. CIL has been tested +on Linux and on Windows (where it can behave at either Microsoft Visual C or +gcc).<BR> +<BR> +If you want to use CIL on Windows then you must get a complete installation +of <TT>cygwin</TT> and the source-code OCaml distribution and compile it yourself +using the cygwin tools (as opposed to getting the Win32 native-code version of +OCaml). If you have not done this before then take a look +<A HREF="../ccured/setup.html">here</A>. (Don't need to worry about <TT>cvs</TT> and +<TT>ssh</TT> unless you will need to use the master CVS repository for CIL.) +<OL CLASS="enumerate" type=1><LI CLASS="li-enumerate"> +Download the CIL <A HREF="distrib">distribution</A> (latest version is +<A HREF="distrib/cil-1.3.5.tar.gz"><TT>distrib/cil-1.3.5.tar.gz</TT></A>). See the Section <A HREF="changes.html#sec-changes">20</A> for recent changes to the CIL distribution. +<LI CLASS="li-enumerate">Unzip and untar the source distribution. This will create a directory + called <TT>cil</TT> whose structure is explained below.<BR> +<TT>tar xvfz cil-1.3.5.tar.gz</TT> +<LI CLASS="li-enumerate">Enter the <TT>cil</TT> directory and run the <TT>configure</TT> script and then + GNU make to build the distribution. If you are on Windows, at least the + <TT>configure</TT> step must be run from within <TT>bash</TT>.<BR> + <CODE>cd cil</CODE><BR> + <CODE>./configure</CODE><BR> + <CODE>make</CODE><BR> + <CODE>make quicktest</CODE><BR> +<LI CLASS="li-enumerate">You should now find <TT>cilly.asm.exe</TT> in a +subdirectory of <TT>obj</TT>. The name of the subdirectory is either <TT>x86_WIN32</TT> +if you are using <TT>cygwin</TT> on Windows or <TT>x86_LINUX</TT> if you are using +Linux (although you should be using instead the Perl wrapper <TT>bin/cilly</TT>). +Note that we do not have an <TT>install</TT> make target and you should use Cil +from the development directory. +<LI CLASS="li-enumerate">If you decide to use CIL, <B>please</B> +<A HREF="mailto:necula@cs.berkeley.edu">send us a note</A>. This will help recharge +our batteries after more than a year of development. And of course, do send us +your bug reports as well.</OL> +The <TT>configure</TT> script tries to find appropriate defaults for your system. +You can control its actions by passing the following arguments: +<UL CLASS="itemize"><LI CLASS="li-itemize"> +<TT>CC=foo</TT> Specifies the path for the <TT>gcc</TT> executable. By default +whichever version is in the PATH is used. If <TT>CC</TT> specifies the Microsoft +<TT>cl</TT> compiler, then that compiler will be set as the default one. Otherwise, +the <TT>gcc</TT> compiler will be the default. +</UL> +CIL requires an underlying C compiler and preprocessor. CIL depends on the +underlying compiler and machine for the sizes and alignment of types.The +installation procedure for CIL queries the underlying compiler for +architecture and compiler dependent configuration parameters, such as the size +of a pointer or the particular alignment rules for structure fields. (This +means, of course, that you should re-run <TT>./configure</TT> when you move CIL to +another machine.)<BR> +<BR> +We have tested CIL on the following compilers: +<UL CLASS="itemize"><LI CLASS="li-itemize"> +On Windows, <TT>cl</TT> compiler version 12.00.8168 (MSVC 6), + 13.00.9466 (MSVC .Net), and 13.10.3077 (MSVC .Net 2003). Run <TT>cl</TT> + with no arguments to get the compiler version. +<LI CLASS="li-itemize">On Windows, using <TT>cygwin</TT> and <TT>gcc</TT> version 2.95.3, 3.0, + 3.2, 3.3, and 3.4. +<LI CLASS="li-itemize">On Linux, using <TT>gcc</TT> version 2.95.3, 3.0, 3.2, 3.3, and 4.0. +</UL> +Others have successfully used CIL with Mac OS X (on both PowerPC and +x86), Solaris, and *BSD. If you make any changes to the build +system in order to run CIL on your platform, please send us a patch.<BR> +<BR> + <HR> +<A HREF="cil001.html"><IMG SRC ="previous_motif.gif" ALT="Previous"></A> +<A HREF="ciltoc.html"><IMG SRC ="contents_motif.gif" ALT="Up"></A> +<A HREF="cil003.html"><IMG SRC ="next_motif.gif" ALT="Next"></A> +</BODY> +</HTML> |