How do I build CGM from scratch?

0. Prerequisites: since CGM is mostly just an interface to various geometry engines, you'll need one of those engines for CGM to use. There are various options:

* ACIS: if you have a license for ACIS, you're all set, just install it on the machine where you're building and use the --with-acis= configure option. This version of CGM supports ACIS up to version 16.

* Cubit: if you have the Cubit mesh generation toolkit from Sandia, you can use it for your geometry engine; use the --with-cubit= configure option.

* Open.Cascade: CGM supports OCC in beta form right now. To use this option, install Open.Cascade v6.3, and use the --with-occ= configure option.

1. Grab the code straight from the repository using Subversion, using the command 'svn co https://svn.mcs.anl.gov/repos/ITAPS/cgm/trunk CGM'. Change into the CGM subdirectory.

2. Run 'autoreconf -fi'. NOTE: CGM relies on the autotools (autoconf, libtool, automake) that come with most LINUX/UNIX distributions. If they're not part of your OS, or you're getting mysterious autotools errors, you might want to try downloading/building more recent versions of those packages then trying again.

3. In the top-level source directory (the one below which are geom/ and util/), run the configure script, with the various options you want. To get a list of options, run ./configure --help.

4. Run make, then make install. This will install the CGM include files and libraries in include/ and lib/ subdirectories below the prefix directory input to the configure script (which is /usr/local by default; change with the --prefix= configure option).

That's it!