[Up: Installation]
[Previous: Getting MICO] [Next: Installing MICO under Unix]

Subsections

- Unix
- Windows 95/NT using Cygnus CDK

#
Prerequisits

## Unix

Before trying to compile MICO make sure you have installed the following software packages:

- gnu make version 3.7 or newer (required)
- C++ compiler and library (required):
  - g++ 2.7.2.x and libg++ 2.7.2, or
  - g++ 2.8.x and libg++ 2.8.x, or
  - egcs 1.x
- flex 2.5.2 or newer (optional)
- bison 1.22 or newer (optional)
- JDK 1.1.5 (SUN's Java developers kit) (optional)
- JavaCUP 0.10g (parser generator for Java) (optional)

`flex` and `bison` are only necessary if you change their input files (files having the suffix `.l` and `.y`) or if you want to compile the graphical user unterface. The last two items (JDK and JavaCUP) are only needed for the graphical interface repository browser, not for MICO itself. So you can get along without installing the Java stuff.

It is important that you use one of the above listed C++ compilers and a C++ library that matches the version of the compiler. Your best bet is using either egcs or g++ 2.8. In contrast to gcc 2.7.2 both of them have proper support for exceptions. egcs is a bit easier to install than g++, because it includes a matching C++ library.

## Windows 95/NT using Cygnus CDK

In order to run MICO on Windows 95 or NT you have to use the Cygnus CDK beta 19, a port of the GNU tools to Win32 or Microsoft's Visual-C++ compiler. For instructions on how to compile MICO using the Visual-C++ compiler, refer to Section 2.4.

Install the CDK by running its setup program. Note that you have to install it in the directory the setup program suggests (`c:CygnusCDKB19`); otherwise `bison` won't be able to find its skeleton files. Then create `c:bin` and put an `sh.exe` into it. Likewise create `c:lib` and put a `cpp.exe` into it:

      mkdir c:\bin
      copy c:\Cygnus\CDK\B19\H-i386-cygwin32\bin\bash.exe c:\bin\sh.exe
      mkdir c:\lib
      copy c:\Cygnus\CDK\B19\H-i386-cygwin32\lib\gcc-lib\2.7-B19\cpp.exe c:\lib

Now you are ready to unpack and compile MICO as described in section 2.3.

There are some problems with the current release of the CDK:

- On standalone machines which are not connected to a name server resolving IP addresses other than 127.0.0.1 into host names will hang forever. This is either a problem with the CDK or with Windows in general. On standalone machines you therefore have to make all servers bind to 127.0.0.1 by specifying `-ORBIIOPAddr inet:127.0.0.1:<port>` on the command line.
- The gcc 2.7 that comes with the CDK has broken exception handling. Furthermore it seems to be unable to use virtual memory, at least I get `out of virtual memory` errors although there is a lot of free swap space. I know there are ports of egcs and gcc 2.8 (which might do better), but didn't give them a try.
- There seems to be a problem with automatic TCP port number selection. Usually one binds to port number 0 and the system automatically picks an unused port for you. This basically works with CDK, but sometimes causes hanging connections. The solution is to always explicitely specify port numbers, i.e. give all servers--even ones that are started by `micod`--the option `-ORBIIOPAddr inet:<host>:<port>`, where `<port>` is nonzero.

[Previous: Getting MICO] [Next: Installing MICO under Unix]
[Up: Installation]