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:
doc/
- all documentation about SMI
examples/
- examples for SMI
idl/
- IDL definitions of MAF and SMI's complement
lib/
- .jar files for SMI, and miscellaneous helpers
bin/
- shell scripts for easily installing and configuring compilation and runtime environment
src/
- the source code and the makefile to build SMI and its documentation
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:
- ORB macro should be set to the alternate ORB's classes;
- NSPROPS macro should define Java properties to be set so that the initial reference to the CORBA naming service can be resolved;
- IDL-compilation rule for the alternate ORB's IDL compiler;
- a target for running a CORBA naming service.
Hint: start from a copy of Jonathan2
file.
Compiling SMI and generating API documentation
Go to src/ directory and invoke:
- 'make jar' to compile SMI and generate the resulting Jar file in lib/ directory
- 'make javadoc' to generate API documentation
- 'make' or 'make all' to compile SMI, generate SMI Jar file and API documentation
- 'make clean' to clean all generated/compiled files but SMI Jar file and API documentation
- 'make delete' to clean all generated/compiled files, including SMI Jar file and API documentation
Runtime services
To run an SMI application, proceed in the following order:
- Mandatory: run CORBA naming service (use 'COSnaming.sh' command in bin/ directory)
- 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.
- 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.