summaryrefslogtreecommitdiff
path: root/modules/CIAO/CIAO-INSTALL.html
blob: 28f1915c1fc69bd6153d97c444f97b222d33fdc1 (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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!-- $Id$  --><html xmlns="http://www.w3.org/1999/xhtml"><head>
    <title>Building and Installing CIAO </title>
    <LINK rev="made" href="mailto:schmidt@cs.wustl.edu"></head>
  <body text="#000000" vLink="#ff0f0f" link="#000fff" bgColor="#ffffff">
    <hr>
    <h3>Building and Installing CIAO</h3>
    <p>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>, or whereever you have installed
      the CIAO sources.  The <code>DANCE_ROOT</code> environment
      variable should also be set to <code>$CIAO_ROOT/DAnCE</code>, or
      wherever you have installed the DAnCE sources. 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>
    <p>CIAO is divided into several parts, so different installation/building rules 
      apply to different parts of CIAO.<br>
      <br>
    </p>
    <ol>
      <li>
        CIAO core/examples: This part of CIAO include following directories: <code>$CIAO_ROOT/ccm</code>, <code>$CIAO_ROOT/ciao</code>,
        <code>$CIAO_ROOT/examples</code>.
      <li>
        CIAO Deployment and Configuration Framework: This part of CIAO includes all the 
        directories in <code>$CIAO_ROOT/DAnCE</code>. 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. We refer, henceforth, to all pieces as CIAO 
        in general. This piece will be referred specifically by their name
        as DAnCE though they are part of CIAO.
      </li>
    </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>
    <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>
    <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>
    <h3>Obtaining and Installing Xerces-C</h3>
    <p>The Xerces-C XML parsing library is a necessary component to build parts of 
      DAnCE that need to process XML based descriptor files, which include the <b>Plan 
        Launcher</b> and the <b>Repository Manager</b>. Currently, the only Xerces-C 
      versions supported by the DOC group is version 2.6 or later or 3.0 or later.
      Earlier versions of the Xerces-C library may work.
    </p>
    <h4>Building Xerces-C</h4>
    <p>You may check <a href="http://www.dre.vanderbilt.edu/~wotte/xerces/">here</a> to 
      see if there is a prebuilt binary available for your platform. Otherwise, you 
      will have to obtain the source from the <a href="http://xml.apache.org/xerces-c/download.cgi">
        Xerces-C webpage</a> and build it. Building Xerces-C is fairly 
      straightfoward. Please see the documentation available <a href="http://xml.apache.org/xerces-c/build.html">
        here</a> for instructions particular to your platform.
    </p>
    <ul>
      <li>
        <strong>NOTE</strong>: Some of the provided projects with Xerces-C attach 
      inconsistant library decorators onto the end of the Xerces-C libraries. The MPC 
      build tool will expect these libraries to be named xerces-c for non debug 
      versions, and xerces-cd for debug versions.
    </ul>
    <h4>Xerces-C Environment Settings</h4>
    <p>If the Xerces includes and libraries are in your system include and library 
      paths, respectively, then you need not set up any environment and may proceed 
      to the next step. If not, you will need to set an environment variable named 
      XERCESCROOT to a path such that $XERCESCROOT/include points to the includes and 
      $XERCESCROOT/lib points to the libraries. Also make sure that $XERCESCROOT/lib 
      is in the appropriate environment variable that your platform uses to search 
      for dynamically linked libraries.
    </p>
    <hr>
    <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:
    </p>
    <ol>
      <li>
      Make sure ACE and TAO are built.
      <li>
      Make sure you have the Xerces-C libraries installed/built
      <li>
      Enable Xerces-C in default.features by setting <code>xerces3=1</code> or 
      <code>xerces2=1</code>, depending on your version Xerces-C libraries.
      <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>
            <code>TAO</code>
          <li>
            <code>TAO_IDL</code>
          <li>
            <code>IFR_Client</code>
          <li>
            <code>IORTable</code>
          <li>
            <code>Valuetype</code>
          <li>
            <code>Security</code>
          <li>
            <code>ACEXML</code>
          </li>
        </ul>
      <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>
        <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:
        </p>
        <ul>
          <li>
            <code>$CIAO_ROOT/DAnCE/</code>
          </li>
        </ul>
        <p>On <strong>Linux</strong>: do <code>$ACE_ROOT/bin/mwc.pl -type gnuace</code> at the 
          locations specified above then <code>make</code>.
        </p>
        <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>
        <p><strong>Note:</strong> You can run <code>mwc.pl</code> at <code>$CIAO_ROOT.</code>
          After running the 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.
        </p>
      </li>
    </ol>
    <strong>Building CIAO quickly</strong> : You can build CIAO quickly by doing 
    the following:
    <ul class="noindent">
      <li>
      Remove all the GNUmakefiles or project files that are shipped with the release or download a source only distribution. 
      <li>
        Open up <code>$CIAO_ROOT/CIAO_TAO.mwc</code>
      .
      <li>
        Run <code>$ACE_ROOT/bin/mwc.pl CIAO_TAO.mwc -type gnuace</code> from <code>$CIAO_ROOT</code>
      .
      <li>
      Type 'make'
      <li style="LIST-STYLE-TYPE: none">
        This will build all the required ACE+TAO libraries including CIAO libraries and 
        tools.
      </li>
    </ul>
    <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" --></p>
  </body>
</html>