Tuscany - Getting Started - SDO C++ Milestone release 2

Tuscany SDO C++ is an implementation of the Service Data Objects for C++ 2.01 specification. This page describes what is needed to install Tuscany SDO for C++.
If you haven't already done so, the first step is to download the SDO C++ Milestone release 2 of Apache Tuscany from our download page.

System Requirements

In order to use Tuscany SDO there are some minimum requirements:

Software Download Link
Operating systems:
  • Windows XP SP2
  • Linux
Axis2C Release 0.94 http://ws.apache.org/axis2/c/download.cgi
Please download and follow the installation instructions. Ensure you can run the Axis2C samples
libxml2 version 2.6.20 http://xmlsoft.org/downloads.html
Most Linux systems have libxml2 by default. On Windows you need to download and install libxml2 from http://www.zlatkovic.com/libxml.en.html
Please read the installation notes for libxml2 particularly regarding it's pre-req's iconv and zlib on Windows.
These libraries will need to be on the PATH in order to run Tuscany SDO.
Optional: STDCXX Release 4.1.3 http://incubator.apache.org/stdcxx/download.html
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.
If you wish to use STDCXX please follow these instructions to build STDCXX for Tuscany SDO before following the instructions below to build SDO with STDCXX.

Installing Tuscany SDO for C++

Getting Tuscany SDO for C++ working with the binary release on Linux

  1. Extract the binary tar package to a folder <tuscany_sdo_install_dir>
  2. Add the <tuscany_sdo_install_dir>/lib directory to the LD_LIBRARY_PATH environment variable

Getting Tuscany SDO for C++ working with the source release on Linux

  1. Extract the source tar package to a folder <tuscany_sdo_install_dir>
  2. The following environment variables are required:
    • LIBXML2_INCLUDE=<path to libxml2 includes>
    • LIBXML2_LIB=<path to libxml2 lib>
      Note: If you are using the default installation of libxml2 these are usually:
      LIBXML2_LIB=/usr/lib
      LIBXML2_INCLUDE=/usr/include/libxml2
    • AXIS2C_HOME=<path to axis2c version 0.94>
  3. Build the source with the following command sequence:
    • ./configure --prefix=<tuscany_sdo_install_dir>/deploy --enable-static=no
    • make
    • make install
    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
  4. Run the test:
    • cd to <tuscany_sdo_install_dir>/runtime/core/test
    • ./tuscany_sdo_test

Getting Tuscany SDO for C++ working with the binary release on Windows

  1. Unzip the supplied zip file to a folder <tuscany_sdo_install_dir>
  2. Add the <tuscany_sdo_install_dir>\bin directory to the PATH environment variable

Getting Tuscany SDO for C++ working with the source release on Windows

  1. Unzip the supplied source zip file to a folder <tuscany_sdo_install_dir>
  2. The following environment variables are required:
    • LIBXML2_HOME=<path to installed libxml2>
    • AXIS2C_HOME=<path to axis2c version 0.94>
  3. 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.
  4. Build the source:
    • cd <tuscany_sdo_install_dir>
    • build
    This will build all the projects and put the required output into the <tuscany_sdo_install_dir>\deploy directory
  5. Run the test program:
    • sdotest.bat
    The output will indicate the number of test run and passed. For example: using Axis2C: D:\axis2c-bin-0.94-win32" using TUSCANY_SDOCPP: d:\tuscany_sdo_cpp-1.0-incubator-M2-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 "sca-policy.xsd" I/O warning : failed to load external entity "sca-policy.xsd" I/O warning : failed to load external entity "sca-policy.xsd" I/O warning : failed to load external entity "sca-policy.xsd" I/O warning : failed to load external entity "sca-policy.xsd" I/O warning : failed to load external entity "sca-policy.xsd" I/O warning : failed to load external entity "sca-policy.xsd" I/O warning : failed to load external entity "sca-policy.xsd" Total tests:111 Tests passed:111 The I/O warning messages can be ignored.
  6. Add the <tuscany_sdo_install_dir>\deploy\bin directory to the PATH environment variable

Getting Tuscany SDO for C++ working with the source release and Apache STDCXX on Windows

STDCXX is an implementation of the C++ Standard Library provided by Apache. The website is at http://incubator.apache.org/stdcxx/.

You must begin by downloading and building STDCXX as described here

STDCXX is supported only when used with Microsoft Visual Studio C++ V7.1. Launch the MSVC++ 7.1 studio by opening the file <tuscany_sdo_install_dir>\projectsvc7\tuscany_sdo\tuscany_sdo.sln

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.

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.

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.

Samples

SDO Technology samples Simple samples that emphasize how to to use SDO technology. Follow the instructions on the samples Getting Started page to build and run the Tuscany SDO samples

Getting Help

First place to look is at the Tuscany FAQ at http://incubator.apache.org/tuscany/faq.html

Any problem with this release can be reported to the Tuscany mailing lists or create a JIRA issue at http://issues.apache.org/jira/browse/Tuscany.

 

 

 

Thank you for your interest in Tuscany.

-The Tuscany Development Team