MobiliTools/SMI installation guide

Requirements

MobiliTools/SMI requires Java2 (preferably version 1.2.2 or greater) and CORBA support. Current distribution supports Java2 and Jonathan/David ORB. J2sdk1.3 or greater is required if using Java's CORBA support.

MobiliTools/SMI distribution is designed for Unix environments. Windows users may use a Unix-like environment (including a shell, make and cpp utilities) such as Cygwin.

Distribution overview

SMI base directory contains:

Setting compilation and runtime parameters

Run install.sh in bin/ directory, and answer to the questions. This will result in generating makefile.inc file in lib/ directory, defining both compilation and runtime parameters. This installation may be done again at any time, to change any reply, and may be fully reset by running reset.sh (bin/ directory).

Multi-ORB support

During the installation process, an ORB must be chosen. Supported ORBs are Java ORB (JDK1.3 or greater) and Jonathan 2. If you which to add another ORB support, add a makefile-formated file to lib/ORBrules directory with the corresponding definitions: Hint: start from a copy of Jonathan2 file.

Compiling SMI and generating API documentation

Go to src/ directory and invoke:

Runtime services

To run an SMI application, proceed in the following order:
  1. Mandatory: run CORBA naming service (use 'COSnaming.sh' command in bin/ directory)
  2. Optional: run a MAF Finder (use 'MAFfinder.sh' command in bin/ directory, with '-gui' switch if a GUI is needed) to support advanced management features.
  3. Run agencies (e.g. use 'agency.sh agency1' in bin/ directory to run an agency with name agency1, or 'agency.sh -gui agency1' to have a GUI-enabled agency) to be able to create and run agents. A CORBA naming service browser may be run to check what is happening with MAF Finder and Agencies (use 'NSbrowser.sh' in bin/ directory).

Examples in examples/

This directory contains examples for SMI.

Type command 'make' (or 'make all') to compile examples, or 'make clean' to delete .class files.