Building NOM

Note that this information is for the OS/2 build. This is a first draft. It's quite possible some stuff is missing (e.g. some non-standard library I have installed but forgot about).

If you have problems visit the #netlabs channel on the eCS IRC network and try to catch Cinc.


The following tools must be installed properly

Note that the links are for the OS/2 versions of the various packages. For other platforms you have to look somewhere else.

Getting the source

The source is available in the SVN repository. All development is done in the trunk atm.

You have to install the subversion client for OS/2. Get it from Just put the binaries in your path and set your HOME directory in config.sys (you need a home dir anyway for most *nix programs).

SET HOME=x:\my_home_dir

Create a working directory on your system, cd into it and check out the source. I strongly recommend to put the sources on the same drive your *nix tree is located.

svn co

This will get all the stuff including everything what's deprecated.

Compiling It

There's no main makefile atm. You have to build the various pieces on your own in the order shown below.

Note that you may safely ignore the ORBit2-2.14.0 directory.

Before you start change the paths in x:/source_base/nom/trunk/ to match your setup.

Garbage Collector

NOM uses garbage collected memory only. Go to if you want to learn more about the GC. The GC will be statically linked to the NOM runtime.

  1. CD into x:/source_base/nom/trunk/gc6.8
  2. Run ./configure
  3. If configure fails, fix the problem and try again...
  4. Run make

Note that this is a typical *nix package. Having a sane build environment is key to success. Failing 'configure' is not a rare thing but more or less the rule.

Be sure to have several different releases of gmake around for trying.

Be sure to have several different autoconf packages around to recreate the configure script if necessary.

Set the config.sys variables properly according to the various readme files. The following environment variables may be useful for you:

  • SET UNIXROOT=<drive letter with your *nix stuff>
  • SET M4=...

IDL Compiler

  1. CD into .../nom/trunk/idl-compiler
  2. Run make

After successfully building the compiler you should have a bin directory holding the executable (nom-idl-compiler.exe).


NOM Kernel and Runtime

  1. CD into .../nom/trunk/nom
  2. Change the paths in to match your setup
  3. Run make

Test program

  1. CD into .../nom/trunk/test
  2. Run make

The resulting executable nom-test.exe can be found in x:\source_base\bin.

Running it shouldn't show any errors.

Last modified 11 years ago Last modified on Apr 13, 2008, 6:15:29 PM