-
Notifications
You must be signed in to change notification settings - Fork 0
/
INSTALL.txt
191 lines (145 loc) · 7.28 KB
/
INSTALL.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
Prerequisits
============
Unix
----
Before trying to compile Mico make sure you have installed the
following software packages:
o gnu make version 3.7 or newer (required)
o C++ compiler and library (required).
We recommend gcc 3.2.x or newer.
o flex 2.5.3 or newer (optional)
o bison 1.25 or newer (optional)
o JDK 1.1.5 (SUN's Java developers kit) (optional)
o JavaCUP 0.10g (parser generator for Java) (optional)
o OpenSSL 0.9.6 or 0.9.7 (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 interface. 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.
Win32 (Windows 95/98/ME/NT/2000/XP)
-----------------------------------
On Win32, you have several options for compiling Mico. The most common
option is to use Microsoft's Visual C++ compiler. In this case, please
read no further but refer to the file README-WIN32 for instructions on
how to compile Mico using Visual C++.
You can also compile Mico on Win32 using Cygwin, which is a port of
many Unix tools, including the gcc compiler, to Windows (for more
details, see http://sources.redhat.com/cygwin/). Just open Cygwin's
bash shell and refer to the Unix installation instructions below.
The third alternative is to use MinGW, which is another port of gcc
to the Windows environment. Other than Cygwin, MinGW does not include
a Posix emulation library but is based on the standard Win32 API
(for more details, see http://www.mingw.org/). Some notes about this
configuration:
- Install Cygwin for its shell and its command-line tools such as make.
(MinGW's MSYS may be an alternative, but has not been tested yet.)
- Install MinGW; versions tested are MinGW-1.1 and mingw-runtime-1.2
- Follow instructions for patching MinGW at
http://www.geocrawler.com/archives/3/6013/2002/1/100/7606374/
- Set your PATH so that MinGW's gcc is picked up instead of Cygwin's
- However, you must use Cygwin's make, because MinGW's make does not
grok Cygwin's path names (/cygdrive/c/ instead of c:/). You can just
delete or rename MinGW's make.
- Configure with --disable-coss --enable-naming --enable-events; other
services have not been updated yet. (Or edit the Makefiles yourself.)
- Makefiles and scripts for demos have not been updated yet, so they
might need editing.
- "make install" is untested.
Installation
============
The Mico source release is shipped as a tar'ed and gzip'ed archive called
mico-<version>.tar.gz
Unpack the archive using the following command:
gzip -dc mico-<version>.tar.gz | tar xf -
You are left with a new directory mico containing the Mico sources. To save
you the hassle of manually editing Makefile's and such, Mico comes with a
configuration script that checks your system for required programs and other
configuration issues. The script, called configure, supports several
important command line options:
--help
Gives an overview of all supported command line options.
--prefix=<install-directory>
With this options you tell configure where the Mico programs and
libraries should be installed after compilation. This defaults
to /usr/local.
--disable-optimize
Do not use the -O2 option when compiling C/C++ files. This option
is usually used together with --enable-debug, since optimisations
usually hurts debugging.
--enable-debug
Use the -g option when compiling C/C++ files.
--disable-shared
Build the Mico library as a static library instead as a shared one.
Shared libraries currently only work on ELF based systems (e.g., Linux,
Solaris, Digital Unix), AIX, and HP-UX. If you do not use the
--disable-shared option you have to make sure the directory where the
Mico library resides in is either by default searched for shared
libraries by the dynamic linker (/usr/lib and /lib on most systems) or
you have to include the directory in the environment variable that tells
the dynamic linker where to search for additional shared libraries. This
variable is called LIBPATH on AIX, SHLIB_PATH on HP-UX and
LD_LIBRARY_PATH on all the other systems.
To run the generated binaries before doing a make install you have to
set this environment variable like this:
# AIX
export LIBPATH=<mico-path>/mico/orb:$LIBPATH
# HP-UX
export SHLIB_PATH=<mico-path>/mico/orb:$SHLIB_PATH
# others
export LD_LIBRARY_PATH=<mico-path>/mico/orb:$LD_LIBRARY_PATH
where <mico-path> is the absolute path of the directory the Mico sources
were unpacked in.
--disable-static
Don't build static MICO libraries but only the shared libraries.
--disable-dynamic
This option disables dynamic loading of CORBA objects into a running
executeable. For dynamic loading to work your system must either support
support dlopen() and friends or shl_load() and friends.
--enable-final
Build a size optimized version of the Mico library. This will need lots
of memory during compilation but will reduce the size of the resulting
library a lot. Works with and without --enable-shared. Does not work on
HP-UX.
--enable-mini-stl
As mentioned before, Mico makes use of the Standard Template Library
(STL). For environments that do not provide an STL implementation, Mico
comes with its own slim STL (called MiniSTL), which is simply a subset
of the standard STL sufficient to compile Mico. By default Mico will
use your compiler's default STL if available. If you do not want to
use the system supplied STL for some reason, you will have to use the
option --enable-mini-stl.
MiniSTL works well with g++ and greatly reduces compilation time and
size of the binaries. Using MiniSTL one could try to compile Mico using
a C++ compiler other than g++. But this still has not been tested and
may therefore lead to problems.
--disable-except
Disable exception handling. On some platforms (e.g., DEC alpha)
and with ancient g++ version, the compiler has very buggy
exception handling support and cannot compile Mico with
exeption handling enabled. If this happens to you try turning off
exception handling using this option.
--with-qt=<qt-path>
Enable support for QT. <qt-path> is the directory where QT has been
installed in.
--with-gtk=<gtk-path>
Enable support for GTK. <gtk-path> is the directory where GTK has been
installed in.
--with-tcl=<tcl-path>}
Enable support for TCL. <tcl-path> is the directory where
TCL has been installed in.
--with-ssl=<SSLeay-path>
Enable support for SSL. <SSLeay-path> is the directory where
SSLeay has been installed in.
Now you should run configure with the proper command line options you need,
e.g.:
cd mico
./configure --with-qt=/usr/local/qt
Use gmake to start compilation and install the programs and libraries,
possibly becoming root before installation:
gmake
gmake install
On some systems you have to take special actions after installing a shared
library in order to tell the dynamic linker about the new library. For
instance on Linux you have to run ldconfig as root:
/sbin/ldconfig -v