Building a development version of mozCellML

Descriptions of how to build the latest mozCellML.

Building mozCellML

Overview

The general steps are as follows:

  1. Follow the instructions to build a static cmgui library.
  2. Build omniORB.
  3. Build cmgui_corba_bridge.
  4. Build Mozilla.
  5. Build XPCORBA.
  6. Build or obtain a small gcc binary distribution(optional).
  7. Build mozGeneralPlugin.
  8. Build mozCellML

Setting up your build environment

Once you have cmgui built, every other step should be done in the Cygwin shell.

Building omniORB

Note: You need to have Python 2.4 installed before you can install omniORB.

On Linux, use gcc to build omniORB as follows...

./configure
make

On Win32, you need to make two builds of omniORB, an MSVC one and a gcc one. To do this, you need two separate source directories.

For the gcc build, select the mingw platform in config/config.mk, and then edit mk/mingw.mk, and wherever you see -mthread add -mno-cygwin as well. Edit mk/platforms/x86_nt_4.0_mingw.mk to set the path to Python.

For the MSVC build, edit config/config.mk to select the platform, and set the Python path in mk/platforms/x86_nt_4.0.mk . Then type cd src/; make export.

Building cmgui_corba_bridge

Checkout the cmgui_corba_bridge module from /product/cmiss/cvs with cvs. Change into the src directory.

On Linux in the source directory, type:

make OMNIORB_DIR=path_to_omniORB

On Win32, type(paths are Cygwin paths not Windows paths):

make OMNIORB_DIR=path_to_omniORB_gcc_build SYSNAME=win32 WIN32=1

Building XPCORBA

Checkout the xpcorba module from the cellml project repository at sourceforge.net.

Type ./configure --with-omniORB=/path/to/omniorb --with-mozilla=/path/to/mozilla/dist/dir

When you build xpcorba on Win32, you need to make sure you refer to the MSVC version of omniORB, not the gcc one, or linking will fail.

On Win32, paths should be Cygwin paths not native Windows paths.

Once configured, you can type make

CS. I also needed to
export LD_LIBRARY_PATH='/home/carey/dev/mozilla/mozilla/nsprpub/pr/src:/home/carey/dev/mozilla/mozilla/nsprpub/lib/ds:/home/carey/dev/mozilla/mozilla/nsprpub/lib/libc/src/' 

Building mozGeneralPlugin

Checkout the mozGeneralPlugin module from the cellml project repository at sourceforge.net.

Type ./configure

CS I also needed to set mozilla dist path
./configure --with-mozilla=/home/carey/dev/mozilla/mozilla/dist/

Once configured, you can type make

Building mozCellML

Checkout the mozCellML module from the cellml project repository at sourceforge.net.

Type ./configure

Once configured, you can type make

Building mozCmgui - not required for mozCellml