Personal tools
  • We're Hiring!

You are here: Home Documentation Previous versions OME Server Developer Image Server Build System

Build System

The OME C build system uses the standard GNU "autotools", Automake and Autoconf. More information about the specific implementation of both can be found on either's website. Both provide comprehensive manuals that are a good start for anyone looking to hack/update OME's build system.

You can also find some extended help and/or reference in what is usually referred to as the GNU Autotools book or Autobook. This is by and large the definative reference for integrating the Autotools. It's also available in paper form for those who prefer that medium and want to support the authors.

The basics

For those that don't particularly want to read the documentation provided there, here are the basics of how the Autotools work.

  1. and acinclude.m4 are created in the root of the source tree
  2. files are created in each source directory
  3. aclocal is run, which creates aclocal.m4 from the machine's local m4 repository and acinclude.m4
  4. autoheader is run, parsing to establish the contents of
  5. autoconf is run, parsing to establish the contents of configure
  6. automake is run, parsing each and it's child,
  7. configure is run with or without extra options, creating the Makefiles in each source directory

All of the binary runs are encompassed in a handy-dandy script, which resides in the root of the source repository.

Using the Build System

As a developer

As a developer, your requirements are slightly higher. Nominally, you actually require autoconf and automake to be installed on your system. When you've checked out the source for the first time, the installation framework will handle the execution of, and make. However, when you want to rebuild the code in src/C all that's required is a simple execution of make, all the configuration has already been written to the makefiles. If you want to change some of configure's settings, you can do that by calling configure first before a make:

./configure --with-omeis-root=/home/bob/OMEIS
make install

The following is a great place to start if you want to customise your build:

./configure --help

If for some reason you needed to update acinclude.m4, a, or the source tree changes in any way (addition of a actual source file or header) you'll need to re-run the autotools build scripts like so ( passes its arguments along to configure):

./ --with-omeis-root=/home/bob/OMEIS
make install

As a systems administrator

In contrast to being a developer, obviously, your requirements are lower in terms of the build system. All the required scripts and binaries for configure are included in the packaged source distributions on the website. You're just be required to run the following assuming you want to re-install or just install OMEIS:

./configure --with-omeis-root=/big_fs/OMEIS
make install

For the most part (unless you're re-installing OMEIS or installing just OMEIS) this is covered by the installation framework.
Document Actions