summaryrefslogtreecommitdiff
path: root/TAO/CIAO/CIAO-INSTALL.html
blob: 4579b324231550bc9bf9941179ed3160943440dc (plain)
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
<!-- $Id$  -->
<HTML>
<HEAD>
  <TITLE>Building and Installing CIAO</TITLE>
  <link rev=made href="mailto:schmidt@cs.wustl.edu">
</HEAD>

<BODY text    = "#000000"
      link    = "#000fff"
      vlink   = "#ff0f0f"
      bgcolor = "#ffffff">

<HR><P>
<H3>Building and Installing CIAO</H3>

The first thing you should do to install CIAO is to set the
environment variable <CODE>CIAO_ROOT</CODE> to be
<CODE>$TAO_ROOT/CIAO</CODE>.  Please refer to the <a
href="../../ACE-INSTALL.html">ACE installation notes</a> and <a
href="../TAO-INSTALL.html">TAO installation notes</a> for instructions
on setting <CODE>$ACE_ROOT</CODE> and <CODE>$TAO_ROOT</CODE>,
respectively. They are needed since CIAO sits on top of
ACE+TAO. Compiling ACE+TAO successfully is the <STRONG> first
</STRONG> requirement for compiling CIAO. 

<P>CIAO is divided into several parts, so different
installation/building rules apply to different parts of CIAO. 
<OL>

  <LI>CIAO core/tools/examples: This part of CIAO include following directories: <CODE>$CIAO_ROOT/ciao</CODE>, <CODE>$CIAO_ROOT/tools</CODE>, <CODE>$CIAO_ROOT/examples</CODE> and all other directories in <CODE>$CIAO_ROOT</CODE> <STRONG>except</STRONG> those listed in the two bullets below.<p>

  <LI>CIDL Compiler: This part of CIAO include
  <CODE>$CIAO_ROOT/CCF</CODE> and <CODE>$CIAO_ROOT/CIDLC</CODE><P> 

  <LI>CIAO Deployment and Assembly Framework: This part of CIAO
  includes <CODE>$CIAO_ROOT/DAnCE</CODE> and is a WIP. DAnCE is an
  implementation of the new <a
  href="http://www.omg.org/cgi-bin/doc?ptc/2003-07-02"> Deployment and
  Configuration </a> specification. This will eventually replace
  different pieces in <CODE>$CIAO_ROOT/ciao </CODE> and
  <CODE>$CIAO_ROOT/tools</CODE>. Please stay tuned to this webpage for
  details. 

  We refer, henceforth, to all pieces as CIAO in general. The above
  two pieces will be referred specifically by their names as CIDLC and
  DAnCE though they are part of CIAO. 

</OL>


<HR>
<H3>Supported Platforms for CIAO</H3>

<p>CIAO should be usable on all platforms that TAO runs on. Please see
<a href="../TAO-INSTALL.html"> TAO's installation </a> pages for details<P>

<H3>Supported Platforms for CIDLC</H3>
<p> CIDLC is supported only on a small subset of platforms. Please
refer to <a href="CCF/Documentation/Build.html"> this </a> for details
on how to build CIDLC. 
<p>
<table width="100%" border=1>
  <tr><b>For Building CIAO CIDLC Compiler</b></tr>
  <tr>
    <td><b>Fully supported, i.e., continually tested and used daily</b></td>
    <td>Windows 2000/XP (VC 7.1), Linux(GCC 3.2 or higher)
    </td>
  </tr>

</table>

<P>If you have <A HREF="../../docs/ACE-porting.html">porting
questions</A> or have a problem compiling CIAO with TAO and ACE on the
platforms shown above please send email to either <A
HREF="news:comp.soft-sys.ace">ACE Newsgroup</A> or the <A
HREF="mailto:ciao-users@cs.wustl.edu">CIAO mailing list</A> and we'll
try to help you fix the problems.  You can also submit bug reports and
enhancement requests in our
<a href="../../docs/usage-bugzilla.html">bug tracking system</a>.<P>

CIAO can be obtained <A
HREF="http://www.dre.vanderbilt.edu/Download.html">electronically</A>
via the WWW and ftp.  <A
HREF="http://www.dre.vanderbilt.edu/CIAO">CIAO</A> is bundled
with the ACE and TAO release.  You'll always need the most recent version of
ACE and TAO because CIAO tracks changes to ACE and TAO very
closely. <P> 

<HR><P>
<H3>Install CIDL Compiler</H3>

  <P>You can choose to either download the binary <CODE>cidlc(exe)</CODE> from <STRONG><A HREF="http://www.dre.vanderbilt.edu/cidlc/binary">here</A></STRONG> or to build it yourself.<P>

  <P><a href="../../MPC/README"> MPC</a> is used to build the CIDL
  compiler on <Strong>Linux</STRONG>. The procedure is outlined
  below. 
     <P>
     <UL>
     <LI> Open up
  <CODE>$ACE_ROOT/bin/MakeProjectCreator/config/global.features
  </CODE> and set cidl=1. 
  <LI> Make sure you set cidl=1 in
  <CODE>$ACE_ROOT/include/makeinclude/platfrom_macros.GNU</CODE>. 
  <LI>Install <code>boost_filesystem</code>, <code>boost_regex</code> and <code>Utility Library</code>. For how to do that please see <a href="./CCF/Documentation/Build.html">Build.html</a>.
  <LI>In <code>$CIAO_ROOT/CIDLC</code> run <code>$ACE_ROOT/bin/mwc.pl CIDLC.mwc</code>
  <LI>In <code>$CIAO_ROOT/CIDLC</code> run <code>make</code>.
  <br>Note: The linking time is a bit long (more than 5 Minutes with an Intel XEON 1.90GHZ CPU, please be patient).
  </UL>

  <P>There are 2 ways to build the CIDL compiler on <Strong>Windows</STRONG>:<P>
<OL>
  <LI>Use the provided Visual Studio solution/project file. For detail please see <a href="./CCF/Documentation/Build.html">Build.html</a><p>

  <LI>Use MPC: (Not supported yet)
</OL>

<HR><P>
<H3>Install CIAO core/tools/examples </H3>

  <P>Most of the GNUmakefiles/project files/solution files required to
  build CIAO are available in the release. If you don't like the
  configurations used, please feel free to regenerate them using
  MPC. Please see <a href="../../MPC/README"> this </a> for more
  details. </p>
<p>

To build CIAO core/tools/examples:

<OL>
  <LI>Make sure ACE and TAO are built. <P>

  <LI>Make sure all ACE/TAO/etc. generated libs are in <code>$ACE_ROOT/lib</code>. To build CIAO you will need:

<ul >
  <li><code>ACE</code></li>
  <li><code>TAO</code></li>
  <li><code>TAO_IDL</code></li>
  <li><code>IFR_Client</code></li>
  <li><code>IORTable</code></li>
  <li><code>Valuetype</code></li>
  <li><code>Security</code></li>
  <li><code>ACEXML</code></li>
</ul><p>

  <LI>Make sure you have cidlc or cidlc.exe in <CODE>$CIAO_ROOT\bin</CODE> with the right permission setting (executable).<p>

  <LI>Generate the Makefile/Solution/Project files and build<P>
      For the supported build tools please see <a href="http://downloads.ociweb.com/MPC/MakeProjectCreator.pdf">MPC manual</a>.<P>
   You have to execute the MPC command in the following directories if you only want to build the examples and have a peek at CIAO:
   <UL>
     <LI> <code>$CIAO_ROOT/ciao</code>
     <LI> <code>$CIAO_ROOT/tools</code>
     <LI> <code>$CIAO_ROOT/examples</code>
   </UL><P>


   On <STRONG>Linux</STRONG>: do <code>$ACE_ROOT/bin/mwc.pl</code> at the locations specified above then <code>make</code>.<P>

   On <STRONG>Windows/VC6</STRONG>: do <code>%ACE_ROOT%/bin/mwc.pl -type vc6</code> at the locations specified above then Open the workspace file and build.<P>

   On <STRONG>Windows/VC71</STRONG>: do <code>%ACE_ROOT%/bin/mwc.pl -type vc71</code> at the locations specified above then Open the solution file and build.<P>

   <Strong>Note:</Strong> You can run <code>mwc.pl</code> at <code>$CIAO_ROOT</code> as long as you don't intend to build CIDL compiler with MPC. If this is the case(default), you can run the mwc.pl command with proper augment once then you can do <code>make</code> at <code>$CIAO_ROOT</code> (Linux) or open the workspace/solution file at <code>$CIAO_ROOT</code> (Windows) to build.
</OL>

   <STRONG> Building CIAO quickly </STRONG>: You can build CIAO
   quickly by doing the following:
   <LI> Remove all the GNUmakefiles or project files that are shipped
   with the release. </LI>
   <LI> Open up <CODE> $CIAO_ROOT/CIAOTAO.mwc </CODE> and remove DAnCE
   from the list. 
   <LI> Run <CODE>$ACE_ROOT/bin/mwc.pl CIAOTAO.mwc</CODE> from <CODE>
   $CIAO_ROOT </CODE>. </LI>
   <LI> Type 'make' </LI>
This will build all the required ACE+TAO libraries including CIAO
libraries and tools. 
<P><HR><P>
Back to the <A HREF="http://www.cs.wustl.edu/~schmidt/CIAO.html">CIAO</A> home page.

<!--#include virtual="/~schmidt/cgi-sig.html" -->
</BODY>
</HTML>