summaryrefslogtreecommitdiffstats
path: root/cpp/sdo/GettingStarted.html
blob: 163650dcd2e010271591f12c9e61e8067148f401 (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
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
<!--
   Licensed to the Apache Software Foundation (ASF) under one
   or more contributor license agreements.  See the NOTICE file
   distributed with this work for additional information
   regarding copyright ownership.  The ASF licenses this file
   to you under the Apache License, Version 2.0 (the
   "License"); you may not use this file except in compliance
   with the License.  You may obtain a copy of the License at
   
     http://www.apache.org/licenses/LICENSE-2.0
     
   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   KIND, either express or implied.  See the License for the
   specific language governing permissions and limitations
   under the License.
-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<HTML>
<HEAD>
   <META CONTENT="text/html; charset=iso-8859-1" HTTP-EQUIV="Content-Type">
   <META CONTENT="text/css" HTTP-EQUIV="Content-Style-Type">
   <STYLE MEDIA="all" TYPE="text/css">
@import url("doc/css/maven-base.css");
@import url("doc/css/maven-theme.css");
   </STYLE> 

    <LINK HREF="doc/css/maven-theme.css" MEDIA="print" REL="stylesheet"
         TYPE="text/css">
   <TITLE>Tuscany - Getting Started</TITLE>
</HEAD>

<BODY>
<DIV ID="bodyColumn"> 
   <DIV ID="contentBox"> 
      <DIV CLASS="section"> 
         <H1>Tuscany - Getting Started - SDO C++ Milestone release 3</H1> 

         <P>Tuscany SDO C++ is an implementation of the 
          <A HREF="http://www.osoa.org/display/Main/SDO+-+Previously+Published+Specifications">Service Data Objects 
          for C++ 2.01 specification</A>.
          This page describes what is needed to install Tuscany SDO for C++.<BR/>If you haven't already done so, the first
         step is to download the SDO C++ Milestone 3 release of Apache Tuscany from our
         <A HREF="http://incubator.apache.org/tuscany/downloads.html" target='_blank'>download page</A>.<BR/>
         </P>
      </DIV>
      <DIV CLASS="section"> 
         <H2>Contents</H2> 
         <OL>
            <LI><A HREF="#requirements">System Requirements</A></LI>
            <LI><A HREF="#install">Installing Tuscany SDO..</A>
                <UL>
                    <LI><A HREF="#linuxsrc">..from the source release on Linux or Mac OS X</A></LI>
                    <!--LI><A HREF="#linuxsrcstdcxx">..from the source release on Linux with Apache STDCXX</A></LI-->
                    <LI><A HREF="#winbin">..from the binary release on Windows</A></LI>
                    <LI><A HREF="#winsrc">..from the source release on Windows</A></LI>
                    <LI><A HREF="#winsrcstdcxx">..from the source release on Windows with Apache STDCXX</A></LI>
                </UL></LI>
            <LI><A HREF="#samples">Samples</A></LI>
            <LI><A HREF="#help">Getting Help</A></LI>
         </OL>
      </DIV>

      <DIV CLASS="section"> 
         <A NAME="requirements"><H2>System Requirements</H2></A>

         <P>In order to use Tuscany SDO there are some minimum requirements:</P> 
         <TABLE CLASS="bodyTable">

            <TBODY>
            <TR CLASS="a">
               <TD><B>Software</B></TD>
               <TD><B>Download Link</B></TD>
            </TR>
            <TR CLASS="b">
               <TD>Operating systems: 
                  <UL>
                     <LI>Windows XP SP2</LI> 
                     <LI>Linux</LI> 
                     <LI>Mac OS X</LI> 
                  </UL>
               </TD>
               <TD> 
               </TD>
            </TR>
            <TR CLASS="b">
               <TD>libxml2 version 2.6.20</TD>

               <TD> 
                  <A HREF="http://xmlsoft.org/downloads.html"
                     TARGET="_blank">http://xmlsoft.org/downloads.html</A><BR/>
                  Most Linux systems have libxml2 by default. On Windows you need to download 
                  and install libxml2, iconv and zlib from 
                  <A HREF="http://www.zlatkovic.com/libxml.en.html" TARGET="_blank">http://www.zlatkovic.com/libxml.en.html</A><BR/>
                  Please read the installation notes for libxml2 particularly regarding it's 
                  pre-req's iconv and zlib on Windows. <BR/>
                  These libraries will need to be on the PATH in order to run Tuscany SDO.
               </TD>
            </TR>
            <TR CLASS="a">
               <TD><STRONG>Optional: </STRONG>Axis2C Release 0.96</TD>

               <TD>
                  Required to build the sdo_axiom utility library. This is a pre-req of the Tuscany Native WebService binding extension.
                  <A HREF="http://ws.apache.org/axis2/c/download.cgi"
                     TARGET="_blank">http://ws.apache.org/axis2/c/download.cgi</A><BR/>
                  Please download and follow the installation instructions. Ensure you can run the Axis2C samples                  
               </TD>
            </TR>
            <TR CLASS="b">
               <TD><STRONG>Optional: </STRONG>STDCXX Release 4.1.3</TD>

               <TD> 
                  <A HREF="http://incubator.apache.org/stdcxx/download.html" 
                     TARGET="_blank">http://incubator.apache.org/stdcxx/download.html</A><BR/>
                  STDCXX is the Apache implementation of the C++ Standard Library. Tuscany SDO 
                  can be built using this library implementation rather than the default 
                  platform libraries available on your operating system.<BR/>
                  If you wish to use STDCXX please follow 
                  <A HREF="doc/BuildingSTDCXX.html">these instructions to build STDCXX for Tuscany SDO</A> 
                  before following the instructions below to build SDO with STDCXX.<BR/>                  
               </TD>
            </TR>
            </TBODY>
         </TABLE>
      </DIV> 
      <DIV CLASS="section"> 
         <A NAME="install"><H2>Installing Tuscany SDO for C++</H2></A>
         <A NAME="linuxsrc"><H3>Getting Tuscany SDO for C++ working with the source release on Linux or Mac OS X</H3></A>
          <OL>
              <LI>Extract the source tar package to a folder &lt;tuscany_sdo_install_dir&gt;</LI>
              <LI>The following environment variables are required:                                 
                <UL>
                  <LI>LIBXML2_INCLUDE=&lt;path to libxml2 includes&gt;</LI>                                      
                  <LI>LIBXML2_LIB=&lt;path to libxml2 lib&gt;<BR/>
                   Note: If you are using the default installation of libxml2 these are usually:<BR/>
                   LIBXML2_LIB=/usr/lib<BR/>
                   LIBXML2_INCLUDE=/usr/include/libxml2<BR/></LI>
                                                                                                
                  <LI>Optional: AXIS2C_HOME=&lt;path to axis2c version 0.96&gt; Required if building the sdo_axiom utility library.<br>
                      <b>Note:</b> There is currently no Axis2C port available for Mac OS X</LI>
                </UL></LI>
              <LI>Build the source with the following command sequence:
                  <UL>
                      <LI>./configure --prefix=&lt;tuscany_sdo_install_dir&gt;/deploy --enable-static=no</LI>
                      <LI>make</LI>
                      <LI>make install</LI>
                  </UL>
	              NOTE: If you don't provide a --prefix configure option, it will by default install into
                  /usr/local/tuscany/sdo. Use ./configure --help to see all the available options.<br>
                  To build the sdo_axiom utility library you must specify the --with-axis2c=yes option on the configure command<p>
                  A script, <b>build.sh</b>, is provided that will build and install SDO for C++. This script will install to the 
                  location specified by the TUSCANY_SDOCPP environment variable if set or into a deploy directory at &lt;tuscany_sdo_install_dir&gt;/deploy.
                  This script will check for the correct environment variable settings and will only build the sdo_axiom utility 
                  library if AXIS2C_HOME is set.</LI>
              <LI>Run the test:
                  <UL>
                      <LI>./sdotest.sh</LI>
                  </UL>The output will indicate the number of tests passed:
<xmp>Using SDO installed at /usr/local/tuscany/sdo
I/O warning : failed to load external entity "not_present.xsd"
I/O warning : failed to load external entity "not-present.xml"
I/O warning : failed to load external entity "sca-policy.xsd"
I/O warning : failed to load external entity "xml.xsd"
I/O warning : failed to load external entity "xhtml1-strict.xsd"
Total tests:118 Tests passed:118</xmp>
                      The I/O warning messages can be ignored.
              </LI>
          </OL>
        <!--A NAME="linuxsrcstdcxx"><H3>Getting Tuscany SDO for C++ working with the source release and Apache STDCXX on Linux</H3></A-->
          
        <A NAME="winbin"><H3>Getting Tuscany SDO for C++ working with the binary release on Windows</H3></A>
          <OL>
              <LI>Unzip the supplied zip file to a folder &lt;tuscany_sdo_install_dir&gt;</LI>
              <LI>Add the &lt;tuscany_sdo_install_dir&gt;\bin directory to the PATH environment variable</LI>
              <LI>Ensure that libxml2, iconv and zlib are on the PATH environment variable. See <A HREF="#winbin">Requirements</A></LI>
          </OL>
        <A NAME="winsrc"><H3>Getting Tuscany SDO for C++ working with the source release on Windows</H3></A>
           <OL>   
              <LI>Unzip the supplied source zip file to a folder &lt;tuscany_sdo_install_dir&gt;</LI>
              <LI>The following environment variables are required:                                 
                <UL>
                  <LI>LIBXML2_HOME=&lt;path to installed libxml2&gt;</LI>
                  <LI>ICONV_HOME=&lt;path to installed iconv&gt;</LI>
                  <LI>ZLIB_HOME=&lt;path to installed zlib&gt;</LI>
                  <LI>Optional: AXIS2C_HOME=&lt;path to axis2c version 0.96&gt;Required if building the sdo_axiom utility library.</LI>
                </UL></LI>
              <LI>You must have set up the environment for Microsoft Visual C++ tools. The build command 
                  will call vcvars32 to set the environment. Ensure the directory containing this is on your path.
                  This will be where you installed the compiler.</LI>
              <LI>Build the source:
                  <UL>
                      <LI>cd &lt;tuscany_sdo_install_dir&gt;</LI>
                      <LI>build</LI>                      
                  </UL>
	              This will build all the projects and put the required output into the &lt;tuscany_sdo_install_dir&gt;\deploy directory</LI>
              <LI>Run the test program:
                  <UL>
                      <LI>sdotest.bat</LI>
                  </UL>
                  The output will indicate the number of test run and passed. For example:
<xmp>using TUSCANY_SDOCPP: d:\tuscany_sdo_cpp-1.0-incubator-M3-src\deploy
I/O warning : failed to load external entity "not_present.xsd"
I/O warning : failed to load external entity "not-present.xml"
I/O warning : failed to load external entity "sca-policy.xsd"
I/O warning : failed to load external entity "xml.xsd"
I/O warning : failed to load external entity "xhtml1-strict.xsd"
Total tests:118 Tests passed:118</xmp>
The I/O warning messages can be ignored.
              </LI>
              <LI>Add the &lt;tuscany_sdo_install_dir&gt;\deploy\bin directory to the PATH environment variable</LI>
              <LI>Ensure that libxml2, iconv and zlib are on the PATH environment variable. See <A HREF="#winbin">Requirements</A></LI>
           </OL>
        <A NAME="winsrcstdcxx"><H3>Getting Tuscany SDO for C++ working with the source release and Apache STDCXX on Windows</H3></A>
          <P>STDCXX is an implementation of the C++ Standard Library provided by Apache.
             The website is at <A HREF="http://incubator.apache.org/stdcxx/">http://incubator.apache.org/stdcxx/</A>.
          </P>
          <P>You must begin by downloading and building STDCXX as described <A HREF="doc/BuildingSTDCXX.html">here</A>
          </P>
          <P>STDCXX is supported only when used with Microsoft Visual Studio C++ V7.1. Launch the 
             MSVC++ 7.1 studio by opening the file &lt;tuscany_sdo_install_dir&gt;\projectsvc7\tuscany_sdo\tuscany_sdo.sln
          </P>
          <P>Both the sdo_runtime and sdo_test projects include build configurations that
             use STDCXX. There are several ways to access the build configurations, and all
             are equally effective. As an example, open the Property pages for sdo_test by
             right clicking on sdo_test in the Solution Explorer pane and selecting
             Properties. The Configuration property in the top left corner of the pane is a
             drop down box offering four options: Debug, Release, stdcxx-Debug,
             stdcxx-Release. Choose the one you want and then launch the build.
          </P>
          <P>All components that are linked (by the linker) must all use the same C++
             Standard library. Therefore, if either sdo_test or sdo_runtime are built with
             STDCXX then both must be.
          </P>
          <P>Tuscany SCA does not currently offer the option to build with stdcxx and so it
             cannot be used with a version of SDO built using stdcxx.
          </P>
      </DIV>

      <DIV CLASS="section"> 
         <A NAME="samples"><H2>Samples</H2></A>
         <TABLE CLASS="bodyTable"> 
            <TBODY>
            <TR CLASS="a">
               <TD STYLE="vertical-align: top; white-space: nowrap;">SDO Technology samples 
               </TD>
               <TD>Simple samples that emphasize how to to use SDO technology. Follow the 
                  instructions on the samples <A HREF="samples/GettingStarted.html">Getting Started</A> 
                  page to build and run the Tuscany SDO samples 
               </TD>
            </TR>
            </TBODY>
         </TABLE>
      </DIV>
      <DIV CLASS="section"> 
         <A NAME="help"><H2>Getting Help</H2></A>

         <P>First place to look is at the Tuscany FAQ at 
         <A HREF="http://cwiki.apache.org/TUSCANY/tuscany-sdo-faq.html"
            TARGET="_blank">http://cwiki.apache.org/TUSCANY/tuscany-sdo-faq.html</A> </P>

         <P>Any problem with this release can be reported to the Tuscany 
         <A HREF="http://cwiki.apache.org/TUSCANY/mailing-lists.html"
            TARGET="_blank">mailing lists</A> or create a JIRA issue at&nbsp;<A HREF="http://issues.apache.org/jira/browse/Tuscany"
                                                                                TARGET="_blank">http://issues.apache.org/jira/browse/Tuscany</A>.</P>
         

         <P>&nbsp;</P> 

         <P>&nbsp;</P> 

         <P>&nbsp;</P> 
         <TABLE CLASS="bodyTable">
            <TBODY>
            <TR CLASS="a">
               <TD> 

                  <P>Thank you for your interest in Tuscany.</P> <STRONG><EM>-The
                  Tuscany Development Team</EM></STRONG> 

                  <P></P>

               </TD>
            </TR>
            </TBODY>
      </DIV>
   </DIV>
</DIV>
</BODY>

</HTML>