You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Jean-Sebastien Delfino <js...@apache.org> on 2006/07/20 00:50:35 UTC

[C++] Steps to setup a Tuscany C++ development and build environment

I just finished setting up a Tuscany C++ development and build 
environment on my Linux machine and thought it would be useful to share 
the steps I went through.

I am using Redhat Linux Enterprise 4, but the same steps should work on 
other Linux systems like Fedora Core or Ubuntu for example.
These steps take no more than 15 mns to complete, starting from scratch. 
After you complete them you should be all set to build the Tuscany C++ 
runtime, and start contributing :)

 From a shell prompt, create a $HOME/tuscany directory.

Install the following prerequisites:

* Subversion - SVN version 1.3.0 or later is good (most Linux distros 
already include SVN).

* Ant and a Java JDK are required by the SCA code generation tool used 
to generate proxies and wrappers for C++ components.
Download apache-ant-1.6.5-bin.tar.gz from 
http://ant.apache.org/bindownload.cgi.
 From $HOME/tuscany do tar xzf apache-ant-1.6.5-bin.tar.gz.
Configure your environment:
export ANT_HOME=$HOME/tuscany/apache-ant-1.6.5
PATH=$ANT_HOME/bin:$PATH

Download jdk-1_5_0_06-linux-i586.bin from 
http://java.sun.com/j2se/1.5.0/download.jsp.
 From $HOME/tuscany run jdk-1_5_0_06-linux-i586.bin, this will extract 
the JDK in $HOME/tuscany/jdk1.5.0_06.
Configure your environment:
export JAVA_HOME=$HOME/tuscany/jdk1.5.0_06
PATH=$JAVA_HOME/bin:$PATH

* Libxml2 2.6.20 or later
Libxml2 is already in most Linux distros, just check that you have 
version 2.6.20 or later (my RHEL4 system had an older version and I had 
to upgrade it).
To see which version of libxml2 is installed on your system do rpm -aq | 
grep libxml2.
Configure your environment:
export LIBXML2_LIB=/usr/lib
export LIBXML2_INCLUDE=/usr/include/libxml2

* Axis2C version 0.92
Download axis2c-bin-0.92-linux.tar.gz from http://ws.apache.org/axis2/c.
 From $HOME/Tuscany do tar xzf axis2c-bin-0.92-linux.tar.gz, this will 
install Axis2C in $HOME/Tuscany/axis2c-bin-0.92-linux.
Configure your environment:
export AXIS2C_HOME=$HOME/tuscany/axis2c-bin-0.92-linux
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AXIS2C_HOME/lib


Download the Tuscany C++ code:
 From $HOME/tuscany, do svn co 
http://svn.apache.org/repos/asf/incubator/tuscany/cpp, this will check 
out all the source code in $HOME/tuscany/cpp.

Configure your environment:
export TUSCANY_SCACPP=$HOME/tuscany/cpp/sca/deploy
export TUSCANY_SDOCPP=$HOME/tuscany/cpp/sdo/deploy
export 
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TUSCANY_SDOCPP/lib:$TUSCANY_SCACPP/lib

The builds use the GNU automake + configure tools, which nicely analyze 
your environment and generate all the make files you need.

To build the SDO C++ runtime:
cd $HOME/tuscany/cpp/sdo
./autogen.sh
./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
make
make install
cd $HOME/tuscany/cpp/sdo/samples
./autogen.sh
./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
make
make install

Note: Tuscany already has build.sh scripts that do all of this for you, 
but I wanted to use the individual commands to understand what was going 
on at each step.
Also, when you make code changes in general you just run make and make 
install and not the whole set of steps.

To run the the SDO test suite:
cd $HOME/tuscany/cpp/sdo
./sdotest.sh

To build the SCA C++ runtime:
cd $HOME/tuscany/cpp/sca
./autogen.sh
./configure --prefix=$TUSCANY_SCACPP --enable-static=no
make
make install
cd $HOME/tuscany/cpp/sdo/samples
./autogen.sh
./configure --prefix=$TUSCANY_SCACPP --enable-static=no
make
make install

To run the SCA runtime tests:
cd $HOME/tuscany/cpp/sdo
./scatest.sh

To run the SCA calculator sample:
cd $HOME/tuscany/cpp/sca/deploy/samples/Calculator/deploy/bin
./runclient.sh

Overall it was pretty simple. I hope these steps will help people set 
their C++ build environment and come help us!

Could other people in the group try these steps in other environments 
and see if they work for them?
Do we have similar steps for Windows?

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [C++] Build instructions on Web site

Posted by Geoffrey Winn <ge...@googlemail.com>.
Yes, definitely.

Would it be worth adding them to the Wiki rather than the web page? That
type of setup information tends to change and having it on the Wiki makes it
wasier to keep up to date. Alternatively, add it to the website with a
pointer to the Wiki for recent changes (or some such).

Geoff.

On 29/08/06, Andrew Borley <aj...@gmail.com> wrote:
>
> I think these would be a good addition to our docs. Probably best under a
> "Development - Getting Started" page rather than "How to build", as
> they're
> about more than just building Tuscany C++.
>
> Andy
>
>
> On 8/28/06, Jean-Sebastien Delfino <js...@apache.org> wrote:
> >
> > Would it make sense to publish this:
> > http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05276.html
> > and this:
> > http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05379.html
> > on a "How to build" page on the Tuscany C++ Web site?
> >
> > Thoughts?
> >
> > --
> > Jean-Sebastien
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> > For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> >
> >
>
>

Re: [C++] Build instructions on Web site

Posted by Andrew Borley <aj...@gmail.com>.
I think these would be a good addition to our docs. Probably best under a
"Development - Getting Started" page rather than "How to build", as they're
about more than just building Tuscany C++.

Andy


On 8/28/06, Jean-Sebastien Delfino <js...@apache.org> wrote:
>
> Would it make sense to publish this:
> http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05276.html
> and this:
> http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05379.html
> on a "How to build" page on the Tuscany C++ Web site?
>
> Thoughts?
>
> --
> Jean-Sebastien
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>

Re: Mac OS X port, was [C++] Build instructions on Web site

Posted by Andrew Borley <aj...@gmail.com>.
On 9/14/06, Jean-Sebastien Delfino <js...@apache.org> wrote:
>
> Andrew Borley wrote:
> > On 9/14/06, Oisin Hurley <oh...@iona.com> wrote:
> >>
> >>
> >> On 7 Sep 2006, at 04:48, Jean-Sebastien Delfino wrote:
> >>
> >> > Did you get a chance to look into the MacOS X port? I have an iBook
> >> > with 10.4.7 ppc Mac OS X here and was wondering if you had a patch
> >> > to the Makefiles that I could try.
> >>
> >> Patch is up: http://issues.apache.org/jira/browse/TUSCANY-681
> >>
> >> Apply in cpp directory. Let me know of blunders :)
> >>
> >> cheers
> >>   --oh
> >
> >
> > Thanks for the patch Oisin - I'm currently working on getting a Linux
> > box up
> > and working, when this is done I'll try your patch out. (if no-one
> > else gets
> > there before me!)
> >
> > Cheers
> > Andy
> >
>
> Hi Oisin, Thanks for the patch!
>
> I'll give it a try this evening when I get home, on a Mac OS X 10.4.7 ppc.
>
> Andy, which version of Mac OS X are you going to try this on? Is anybody
> interested in trying on Mac OS intel as well?


I was going to try it out on my Linux machine (when it's working) - it's
mostly the automake and configure files that Oisin has patched so I was just
going to check that Linux build is still happy. I don't have access to any
Mac OS X machines, so if you could try it out that would be cool :)

Andy

Re: Mac OS X port, was [C++] Build instructions on Web site

Posted by Oisin Hurley <oh...@iona.com>.
>  Is anybody interested in trying on Mac OS intel as well?

I'm sure Jim Marino would love a break from that Maven buildsystem
and java to run automake and C++ on his shiny intel macbook pro ;-)

cheers
  --oh

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Mac OS X port, was [C++] Build instructions on Web site

Posted by Jean-Sebastien Delfino <js...@apache.org>.
Andrew Borley wrote:
> On 9/14/06, Oisin Hurley <oh...@iona.com> wrote:
>>
>>
>> On 7 Sep 2006, at 04:48, Jean-Sebastien Delfino wrote:
>>
>> > Did you get a chance to look into the MacOS X port? I have an iBook
>> > with 10.4.7 ppc Mac OS X here and was wondering if you had a patch
>> > to the Makefiles that I could try.
>>
>> Patch is up: http://issues.apache.org/jira/browse/TUSCANY-681
>>
>> Apply in cpp directory. Let me know of blunders :)
>>
>> cheers
>>   --oh
>
>
> Thanks for the patch Oisin - I'm currently working on getting a Linux 
> box up
> and working, when this is done I'll try your patch out. (if no-one 
> else gets
> there before me!)
>
> Cheers
> Andy
>

Hi Oisin, Thanks for the patch!

I'll give it a try this evening when I get home, on a Mac OS X 10.4.7 ppc.

Andy, which version of Mac OS X are you going to try this on? Is anybody 
interested in trying on Mac OS intel as well?

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Mac OS X port, was [C++] Build instructions on Web site

Posted by Andrew Borley <aj...@gmail.com>.
On 9/14/06, Oisin Hurley <oh...@iona.com> wrote:
>
>
> On 7 Sep 2006, at 04:48, Jean-Sebastien Delfino wrote:
>
> > Did you get a chance to look into the MacOS X port? I have an iBook
> > with 10.4.7 ppc Mac OS X here and was wondering if you had a patch
> > to the Makefiles that I could try.
>
> Patch is up: http://issues.apache.org/jira/browse/TUSCANY-681
>
> Apply in cpp directory. Let me know of blunders :)
>
> cheers
>   --oh


Thanks for the patch Oisin - I'm currently working on getting a Linux box up
and working, when this is done I'll try your patch out. (if no-one else gets
there before me!)

Cheers
Andy

Re: Mac OS X port, was [C++] Build instructions on Web site

Posted by Oisin Hurley <oh...@iona.com>.
On 7 Sep 2006, at 04:48, Jean-Sebastien Delfino wrote:

> Did you get a chance to look into the MacOS X port? I have an iBook  
> with 10.4.7 ppc Mac OS X here and was wondering if you had a patch  
> to the Makefiles that I could try.

Patch is up: http://issues.apache.org/jira/browse/TUSCANY-681

Apply in cpp directory. Let me know of blunders :)

cheers
  --oh

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Mac OS X port, was [C++] Build instructions on Web site

Posted by Oisin Hurley <oh...@iona.com>.
>> Did you get a chance to look into the MacOS X port? I have an  
>> iBook with 10.4.7 ppc Mac OS X here and was wondering if you had a  
>> patch to the Makefiles that I could try.

Quick update on this, I have the Axis2C mostly built, SDO part
of the port was straightforward, currently working thru some
link issues with sca, I've stuck a comment on the jira:

https://issues.apache.org/jira/browse/TUSCANY-681

Biggest speedbump so far has been re-learning Autoconf :D

  cheers
    --oh

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: Mac OS X port, was [C++] Build instructions on Web site

Posted by Oisin Hurley <oh...@iona.com>.
Hi Jean-Sebastien

> Did you get a chance to look into the MacOS X port? I have an iBook  
> with 10.4.7 ppc Mac OS X here and was wondering if you had a patch  
> to the Makefiles that I could try.

I got started and quickly made my way to porting Axis 0.92 for
the axiom stuff :) I've just updated to 0.93 and need to update
the autoconf that comes with that, plus add some darwin
specific code in the networking area - so I've not made it high
enough up the stack to give a patch yet!

I'm at EclipseWorld this week so won't get back to working on
it till Monday.

  cheers
   --oh

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Mac OS X port, was [C++] Build instructions on Web site

Posted by Jean-Sebastien Delfino <js...@apache.org>.
Oisin Hurley wrote:
[snip]
>
> BTW - has anyone done a port to MacOS X 10.4.7 ppc? If not I will get
> a start on it - not vital for the roadmap, but it is my machine of
> choice and I'll get nothing done if it doesn't work there ;)
>
Hi Oisin,

Did you get a chance to look into the MacOS X port? I have an iBook with 
10.4.7 ppc Mac OS X here and was wondering if you had a patch to the 
Makefiles that I could try.

Thanks,

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [C++] Build instructions on Web site

Posted by Andrew Borley <aj...@gmail.com>.
Hi Oisin,

Yep, that would be good.

Andy


On 8/31/06, Oisin Hurley <oh...@iona.com> wrote:
>
> > Great! I don't think that anybody has tried MacOS X yet. It will be
> > really great if you can port the Linux build... and then we can all
> > get iBooks :)
>
> I've to get axis2c ported first :)  Would it be
> good practice to put a JIRA in for this so that
> it's visible?
>
>   cheers
>    --oh
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>

Re: [C++] Build instructions on Web site

Posted by Oisin Hurley <oh...@iona.com>.
> Great! I don't think that anybody has tried MacOS X yet. It will be  
> really great if you can port the Linux build... and then we can all  
> get iBooks :)

I've to get axis2c ported first :)  Would it be
good practice to put a JIRA in for this so that
it's visible?

  cheers
   --oh

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [C++] Build instructions on Web site

Posted by Jean-Sebastien Delfino <js...@apache.org>.
Oisin Hurley wrote:
>
> On 28 Aug 2006, at 22:56, Jean-Sebastien Delfino wrote:
>
>> Would it make sense to publish this: 
>> http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05276.html
>> and this: 
>> http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05379.html
>> on a "How to build" page on the Tuscany C++ Web site?
>>
>> Thoughts?
>
> Please do :)
>
> BTW - has anyone done a port to MacOS X 10.4.7 ppc? If not I will get
> a start on it - not vital for the roadmap, but it is my machine of
> choice and I'll get nothing done if it doesn't work there ;)
>
>  cheers
>   --oh
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>

Great! I don't think that anybody has tried MacOS X yet. It will be 
really great if you can port the Linux build... and then we can all get 
iBooks :)

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [C++] Build instructions on Web site

Posted by Oisin Hurley <oh...@iona.com>.
On 28 Aug 2006, at 22:56, Jean-Sebastien Delfino wrote:

> Would it make sense to publish this: http://www.mail-archive.com/ 
> tuscany-dev%40ws.apache.org/msg05276.html
> and this: http://www.mail-archive.com/tuscany-dev%40ws.apache.org/ 
> msg05379.html
> on a "How to build" page on the Tuscany C++ Web site?
>
> Thoughts?

Please do :)

BTW - has anyone done a port to MacOS X 10.4.7 ppc? If not I will get
a start on it - not vital for the roadmap, but it is my machine of
choice and I'll get nothing done if it doesn't work there ;)

  cheers
   --oh

---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[C++] Build instructions on Web site

Posted by Jean-Sebastien Delfino <js...@apache.org>.
Would it make sense to publish this: 
http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05276.html
and this: 
http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg05379.html
on a "How to build" page on the Tuscany C++ Web site?

Thoughts?

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [C++] Steps to setup a Tuscany C++ development and build environment

Posted by Jean-Sebastien Delfino <js...@apache.org>.
David Wheeler wrote:
> Hey,
> I figured out why it wasn't finding xmlstring.h, I had to install
> libmxml-dev to get the header files.
>
> Now SDO builds and tests.
> SCA however still fails:
>
> make[5]: Entering directory
> `/home/dwheeler/tuscany/cpp/sca/runtime/ws_reference/axis2c/src'
> /bin/sh ../../../../libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I.
> -I../../../.. -I../../../../runtime/core/src
> -I/home/dwheeler/tuscany/cpp/sdo/deploy/include
> -I/usr/local/axis/axis2c-bin-0.92-linux/include  -D_DEBUG   -g -O2 -c
> WSServiceWrapper.cpp
> mkdir .libs
> g++ -DHAVE_CONFIG_H -I. -I. -I../../../.. -I../../../../runtime/core/src
> -I/home/dwheeler/tuscany/cpp/sdo/deploy/include -I/usr/local/axis/axis2c-
> bin-0.92-linux/include -D_DEBUG -g -O2 
> -Wp,-MD,.deps/WSServiceWrapper.pp -c
> WSServiceWrapper.cpp  -fPIC -DPIC -o .libs/WSServiceWrapper.o
> In file included from
> ../../../../runtime/core/src/tuscany/sca/core/ServiceWrapper.h:25,
>                 from
> ../../../../runtime/core/src/tuscany/sca/core/ExternalServiceWrapper.h:24, 
>
>                 from
> ../../../../runtime/core/src/tuscany/sca/ws/WSServiceWrapper.h:24,
>                 from WSServiceWrapper.cpp:23:
> ../../../../runtime/core/src/tuscany/sca/core/Operation.h:23:29: error:
> commonj/sdo/SDO.h: No such file or directory
> In file included from
> ../../../../runtime/core/src/tuscany/sca/model/Wsdl.h:27,
>                 from Axis2Client.h:30,
>
David,

You're almost there... Looks like SDO.h cannot be found.

Could you please check the following?
- $TUSCANY_SDOCPP should be set to tuscany/cpp/sdo/deploy
- If you do configure --prefix=$TUSCANY_SDOCPP, make, and make install 
to build the SDO runtime, then the SDO .h files should end up in 
$TUSCANY_SDOCPP/deploy/include/commonj/sdo. Do you see these files?

Thanks,

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [C++] Steps to setup a Tuscany C++ development and build environment

Posted by David Wheeler <wh...@gmail.com>.
Hey,
I figured out why it wasn't finding xmlstring.h, I had to install
libmxml-dev to get the header files.

Now SDO builds and tests.
SCA however still fails:

make[5]: Entering directory
`/home/dwheeler/tuscany/cpp/sca/runtime/ws_reference/axis2c/src'
/bin/sh ../../../../libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I.
-I../../../.. -I../../../../runtime/core/src
-I/home/dwheeler/tuscany/cpp/sdo/deploy/include
-I/usr/local/axis/axis2c-bin-0.92-linux/include  -D_DEBUG   -g -O2 -c
WSServiceWrapper.cpp
mkdir .libs
 g++ -DHAVE_CONFIG_H -I. -I. -I../../../.. -I../../../../runtime/core/src
-I/home/dwheeler/tuscany/cpp/sdo/deploy/include -I/usr/local/axis/axis2c-
bin-0.92-linux/include -D_DEBUG -g -O2 -Wp,-MD,.deps/WSServiceWrapper.pp -c
WSServiceWrapper.cpp  -fPIC -DPIC -o .libs/WSServiceWrapper.o
In file included from
../../../../runtime/core/src/tuscany/sca/core/ServiceWrapper.h:25,
                 from
../../../../runtime/core/src/tuscany/sca/core/ExternalServiceWrapper.h:24,
                 from
../../../../runtime/core/src/tuscany/sca/ws/WSServiceWrapper.h:24,
                 from WSServiceWrapper.cpp:23:
../../../../runtime/core/src/tuscany/sca/core/Operation.h:23:29: error:
commonj/sdo/SDO.h: No such file or directory
In file included from
../../../../runtime/core/src/tuscany/sca/model/Wsdl.h:27,
                 from Axis2Client.h:30,

Re: [C++] Steps to setup a Tuscany C++ development and build environment

Posted by David Wheeler <wh...@gmail.com>.
Sebastien,

The apt-get commands for the missing requiements are

$ sudo apt-get install libxml2-dev
$ sudo apt-get install g++
$ sudo apt-get install make
$ sudo apt-get install automake1.9
$ sudo apt-get install libtool

Using libxml2-dev fixed the xmlstring.h problem (the standard libxml2
package doesn't have it) so now SDO works fine. But It still will not
compile SCA. The error
"error: commonj/sdo/SDO.h: No such file or directory " continues to occur.
I'm fairly certain $TUSCANY_SDOCPP is set properly, so I'm not sure what is
going.

-David

On 7/20/06, Jean-Sebastien Delfino <js...@apache.org> wrote:
>
> David Wheeler wrote:
> > Well, I tried compliling it under Ubuntu and it isn't quite working.
> > Ubuntu starts out as a very basic install so in order to compile it, I
> > had
> > to install not just Java, Ant, Svn, and Axis2C, but g++, make,
> > automake, and
> > libtool.
> > It is also a debian based system so it uses apt instead of rpm for
> > package
> > managment, so the command to check for libxml2 is  "sudo apt-cache show
> > libxml2"
> >
> > Anyhow, once that is all installed augen.sh runs fine, configure runs
> > fine,
> > but make fails.
> >
> > It might have to do with my gcc version which is 4.0.3
> >
> > Here is a dump of make's output:
> >
> > make  all-recursive
> > make[1]: Entering directory `/home/dwheeler/tuscany/cpp/sdo'
> > Making all in runtime
> > make[2]: Entering directory `/home/dwheeler/tuscany/cpp/sdo/runtime'
> > Making all in core
> > make[3]: Entering directory
> `/home/dwheeler/tuscany/cpp/sdo/runtime/core'
> > Making all in src
> > make[4]: Entering directory
> > `/home/dwheeler/tuscany/cpp/sdo/runtime/core/src'
> > Making all in commonj
> > make[5]: Entering directory
> > `/home/dwheeler/tuscany/cpp/sdo/runtime/core/src/commonj'
> > Making all in sdo
> > make[6]: Entering directory
> > `/home/dwheeler/tuscany/cpp/sdo/runtime/core/src/commonj/sdo'
> > if /bin/sh ../../../../../libtool --tag=CXX --mode=compile g++
> > -DHAVE_CONFIG_H -I. -I. -I../../../../.. -I../
> > ../../../../runtime/core/src
> > -I    -g -O2 -MT ChangedDataObjectListImpl.lo -MD -MP -MF
> > ".deps/ChangedDataObje ctListImpl.Tpo" -c -o
> ChangedDataObjectListImpl.lo
> > ChangedDataObjectListImpl.cpp; \
> >        then mv -f ".deps/ChangedDataObjectListImpl.Tpo"
> > ".deps/ChangedDataObjectListImpl.Plo"; else rm -f ".
> > deps/ChangedDataObjectListImpl.Tpo"; exit 1; fi
> > mkdir .libs
> > g++ -DHAVE_CONFIG_H -I. -I. -I../../../../..
> > -I../../../../../runtime/core/src -I -g -O2 -MT ChangedDataObje
> > ctListImpl.lo -MD -MP -MF .deps/ChangedDataObjectListImpl.Tpo -c
> > ChangedDataObjectListImpl.cpp  -fPIC -DPIC - o
> > .libs/ChangedDataObjectListImpl.o
> > In file included from
> > ../../../../../runtime/core/src/commonj/sdo/ChangeSummaryImpl.h:30,
> >                 from
> > ../../../../../runtime/core/src/commonj/sdo/DataObjectImpl.h:41,
> >                 from ChangedDataObjectListImpl.cpp:31:
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:26:30: error:
> > libxml/xmlstring.h: No such file or directory
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error:
> > expected ',' or '...' before '*' token
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error:
> ISO
> > C++ forbids declaration of 'xmlChar ' with no type
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error:
> > expected ',' or '...' before '*' token
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error:
> ISO
> > C++ forbids declaration of 'xmlChar ' with no type
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error:
> > 'commonj::sdo::SDOXMLString::SDOXMLStri ng(int)' cannot be overloaded
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error:
> > with
> > 'commonj::sdo::SDOXMLString::SDOXM LString(int)'
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:57: error:
> > expected ',' or '...' before '*' token
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:57: error:
> ISO
> > C++ forbids declaration of 'xmlChar ' with no type
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:60: error:
> > expected ',' or '...' before '*' token
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:60: error:
> ISO
> > C++ forbids declaration of 'xmlChar ' with no type
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:67: error:
> ISO
> > C++ forbids declaration of 'type na me' with no type
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:67: error:
> > 'operator const int' does not name a ty pe
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:83: error:
> ISO
> > C++ forbids declaration of 'xmlChar ' with no type
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:83: error:
> > expected ';' before '*' token
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h: In member
> > function 'commonj::sdo::SDOXMLString::o perator const char*() const':
> > ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:66: error:
> > 'xmlForm' was not declared in this scop e
> > make[6]: *** [ChangedDataObjectListImpl.lo] Error 1
> >
> >
> >
> > On 7/19/06, Jean-Sebastien Delfino <jsdelfino@apache.org > wrote:
> >>
> >> I just finished setting up a Tuscany C++ development and build
> >> environment on my Linux machine and thought it would be useful to share
> >> the steps I went through.
> >>
> >> I am using Redhat Linux Enterprise 4, but the same steps should work on
> >> other Linux systems like Fedora Core or Ubuntu for example.
> >> These steps take no more than 15 mns to complete, starting from
> scratch.
> >> After you complete them you should be all set to build the Tuscany C++
> >> runtime, and start contributing :)
> >>
> >> From a shell prompt, create a $HOME/tuscany directory.
> >>
> >> Install the following prerequisites:
> >>
> >> * Subversion - SVN version 1.3.0 or later is good (most Linux distros
> >> already include SVN).
> >>
> >> * Ant and a Java JDK are required by the SCA code generation tool used
> >> to generate proxies and wrappers for C++ components.
> >> Download apache-ant-1.6.5-bin.tar.gz from
> >> http://ant.apache.org/bindownload.cgi.
> >> From $HOME/tuscany do tar xzf apache-ant-1.6.5-bin.tar.gz.
> >> Configure your environment:
> >> export ANT_HOME=$HOME/tuscany/apache-ant-1.6.5
> >> PATH=$ANT_HOME/bin:$PATH
> >>
> >> Download jdk-1_5_0_06-linux-i586.bin from
> >> http://java.sun.com/j2se/1.5.0/download.jsp .
> >> From $HOME/tuscany run jdk-1_5_0_06-linux-i586.bin, this will extract
> >> the JDK in $HOME/tuscany/jdk1.5.0_06.
> >> Configure your environment:
> >> export JAVA_HOME=$HOME/tuscany/jdk1.5.0_06
> >> PATH=$JAVA_HOME/bin:$PATH
> >>
> >> * Libxml2 2.6.20 or later
> >> Libxml2 is already in most Linux distros, just check that you have
> >> version 2.6.20 or later (my RHEL4 system had an older version and I had
> >> to upgrade it).
> >> To see which version of libxml2 is installed on your system do rpm -aq
> |
> >> grep libxml2.
> >> Configure your environment:
> >> export LIBXML2_LIB=/usr/lib
> >> export LIBXML2_INCLUDE=/usr/include/libxml2
> >>
> >> * Axis2C version 0.92
> >> Download axis2c-bin-0.92-linux.tar.gz from http://ws.apache.org/axis2/c
> .
> >> From $HOME/Tuscany do tar xzf axis2c-bin-0.92-linux.tar.gz, this will
> >> install Axis2C in $HOME/Tuscany/axis2c-bin-0.92-linux.
> >> Configure your environment:
> >> export AXIS2C_HOME=$HOME/tuscany/axis2c- bin-0.92-linux
> >> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AXIS2C_HOME/lib
> >>
> >>
> >> Download the Tuscany C++ code:
> >> From $HOME/tuscany, do svn co
> >> http://svn.apache.org/repos/asf/incubator/tuscany/cpp , this will check
> >> out all the source code in $HOME/tuscany/cpp.
> >>
> >> Configure your environment:
> >> export TUSCANY_SCACPP=$HOME/tuscany/cpp/sca/deploy
> >> export TUSCANY_SDOCPP=$HOME/tuscany/cpp/sdo/deploy
> >> export
> >>
> LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TUSCANY_SDOCPP/lib:$TUSCANY_SCACPP/lib
> >>
> >> The builds use the GNU automake + configure tools, which nicely analyze
> >> your environment and generate all the make files you need.
> >>
> >> To build the SDO C++ runtime:
> >> cd $HOME/tuscany/cpp/sdo
> >> ./autogen.sh
> >> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
> >> make
> >> make install
> >> cd $HOME/tuscany/cpp/sdo/samples
> >> ./autogen.sh
> >> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
> >> make
> >> make install
> >>
> >> Note: Tuscany already has build.sh scripts that do all of this for you,
> >> but I wanted to use the individual commands to understand what was
> going
> >> on at each step.
> >> Also, when you make code changes in general you just run make and make
> >> install and not the whole set of steps.
> >>
> >> To run the the SDO test suite:
> >> cd $HOME/tuscany/cpp/sdo
> >> ./sdotest.sh
> >>
> >> To build the SCA C++ runtime:
> >> cd $HOME/tuscany/cpp/sca
> >> ./autogen.sh
> >> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
> >> make
> >> make install
> >> cd $HOME/tuscany/cpp/sdo/samples
> >> ./autogen.sh
> >> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
> >> make
> >> make install
> >>
> >> To run the SCA runtime tests:
> >> cd $HOME/tuscany/cpp/sdo
> >> ./scatest.sh
> >>
> >> To run the SCA calculator sample:
> >> cd $HOME/tuscany/cpp/sca/deploy/samples/Calculator/deploy/bin
> >> ./runclient.sh
> >>
> >> Overall it was pretty simple. I hope these steps will help people set
> >> their C++ build environment and come help us!
> >>
> >> Could other people in the group try these steps in other environments
> >> and see if they work for them?
> >> Do we have similar steps for Windows?
> >>
> >> --
> >> Jean-Sebastien
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> >> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
> >>
> >>
> >
>
> David,
> Thanks for trying this on your system. Would you mind posting a brief
> description of the steps you followed to install the missing prereqs?
> Then I'll merge them with my steps into a Wiki page. Thanks!
>
> The first error in your make log:
>
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:26:30: error:
> libxml/xmlstring.h: No such file or directory
>
> complains that libxml/xmlstring cannot be found.
>
> Could it be a problem with the location of libxml2 on your system and
> the LIBXML2_INCLUDE variable? Do you have a
> $LIBXML2_INCLUDE/libxml/xmlstring.h?
>
> --
> Jean-Sebastien
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>

Re: [C++] Steps to setup a Tuscany C++ development and build environment

Posted by Jean-Sebastien Delfino <js...@apache.org>.
David Wheeler wrote:
> Well, I tried compliling it under Ubuntu and it isn't quite working.
> Ubuntu starts out as a very basic install so in order to compile it, I 
> had
> to install not just Java, Ant, Svn, and Axis2C, but g++, make, 
> automake, and
> libtool.
> It is also a debian based system so it uses apt instead of rpm for 
> package
> managment, so the command to check for libxml2 is  "sudo apt-cache show
> libxml2"
>
> Anyhow, once that is all installed augen.sh runs fine, configure runs 
> fine,
> but make fails.
>
> It might have to do with my gcc version which is 4.0.3
>
> Here is a dump of make's output:
>
> make  all-recursive
> make[1]: Entering directory `/home/dwheeler/tuscany/cpp/sdo'
> Making all in runtime
> make[2]: Entering directory `/home/dwheeler/tuscany/cpp/sdo/runtime'
> Making all in core
> make[3]: Entering directory `/home/dwheeler/tuscany/cpp/sdo/runtime/core'
> Making all in src
> make[4]: Entering directory
> `/home/dwheeler/tuscany/cpp/sdo/runtime/core/src'
> Making all in commonj
> make[5]: Entering directory
> `/home/dwheeler/tuscany/cpp/sdo/runtime/core/src/commonj'
> Making all in sdo
> make[6]: Entering directory
> `/home/dwheeler/tuscany/cpp/sdo/runtime/core/src/commonj/sdo'
> if /bin/sh ../../../../../libtool --tag=CXX --mode=compile g++
> -DHAVE_CONFIG_H -I. -I. -I../../../../.. -I../ 
> ../../../../runtime/core/src
> -I    -g -O2 -MT ChangedDataObjectListImpl.lo -MD -MP -MF
> ".deps/ChangedDataObje ctListImpl.Tpo" -c -o ChangedDataObjectListImpl.lo
> ChangedDataObjectListImpl.cpp; \
>        then mv -f ".deps/ChangedDataObjectListImpl.Tpo"
> ".deps/ChangedDataObjectListImpl.Plo"; else rm -f ".
> deps/ChangedDataObjectListImpl.Tpo"; exit 1; fi
> mkdir .libs
> g++ -DHAVE_CONFIG_H -I. -I. -I../../../../..
> -I../../../../../runtime/core/src -I -g -O2 -MT ChangedDataObje
> ctListImpl.lo -MD -MP -MF .deps/ChangedDataObjectListImpl.Tpo -c
> ChangedDataObjectListImpl.cpp  -fPIC -DPIC - o
> .libs/ChangedDataObjectListImpl.o
> In file included from
> ../../../../../runtime/core/src/commonj/sdo/ChangeSummaryImpl.h:30,
>                 from
> ../../../../../runtime/core/src/commonj/sdo/DataObjectImpl.h:41,
>                 from ChangedDataObjectListImpl.cpp:31:
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:26:30: error:
> libxml/xmlstring.h: No such file or directory
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error:
> expected ',' or '...' before '*' token
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error: ISO
> C++ forbids declaration of 'xmlChar ' with no type
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error:
> expected ',' or '...' before '*' token
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error: ISO
> C++ forbids declaration of 'xmlChar ' with no type
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error:
> 'commonj::sdo::SDOXMLString::SDOXMLStri ng(int)' cannot be overloaded
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error: 
> with
> 'commonj::sdo::SDOXMLString::SDOXM LString(int)'
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:57: error:
> expected ',' or '...' before '*' token
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:57: error: ISO
> C++ forbids declaration of 'xmlChar ' with no type
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:60: error:
> expected ',' or '...' before '*' token
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:60: error: ISO
> C++ forbids declaration of 'xmlChar ' with no type
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:67: error: ISO
> C++ forbids declaration of 'type na me' with no type
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:67: error:
> 'operator const int' does not name a ty pe
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:83: error: ISO
> C++ forbids declaration of 'xmlChar ' with no type
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:83: error:
> expected ';' before '*' token
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h: In member
> function 'commonj::sdo::SDOXMLString::o perator const char*() const':
> ../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:66: error:
> 'xmlForm' was not declared in this scop e
> make[6]: *** [ChangedDataObjectListImpl.lo] Error 1
>
>
>
> On 7/19/06, Jean-Sebastien Delfino <jsdelfino@apache.org > wrote:
>>
>> I just finished setting up a Tuscany C++ development and build
>> environment on my Linux machine and thought it would be useful to share
>> the steps I went through.
>>
>> I am using Redhat Linux Enterprise 4, but the same steps should work on
>> other Linux systems like Fedora Core or Ubuntu for example.
>> These steps take no more than 15 mns to complete, starting from scratch.
>> After you complete them you should be all set to build the Tuscany C++
>> runtime, and start contributing :)
>>
>> From a shell prompt, create a $HOME/tuscany directory.
>>
>> Install the following prerequisites:
>>
>> * Subversion - SVN version 1.3.0 or later is good (most Linux distros
>> already include SVN).
>>
>> * Ant and a Java JDK are required by the SCA code generation tool used
>> to generate proxies and wrappers for C++ components.
>> Download apache-ant-1.6.5-bin.tar.gz from
>> http://ant.apache.org/bindownload.cgi.
>> From $HOME/tuscany do tar xzf apache-ant-1.6.5-bin.tar.gz.
>> Configure your environment:
>> export ANT_HOME=$HOME/tuscany/apache-ant-1.6.5
>> PATH=$ANT_HOME/bin:$PATH
>>
>> Download jdk-1_5_0_06-linux-i586.bin from
>> http://java.sun.com/j2se/1.5.0/download.jsp .
>> From $HOME/tuscany run jdk-1_5_0_06-linux-i586.bin, this will extract
>> the JDK in $HOME/tuscany/jdk1.5.0_06.
>> Configure your environment:
>> export JAVA_HOME=$HOME/tuscany/jdk1.5.0_06
>> PATH=$JAVA_HOME/bin:$PATH
>>
>> * Libxml2 2.6.20 or later
>> Libxml2 is already in most Linux distros, just check that you have
>> version 2.6.20 or later (my RHEL4 system had an older version and I had
>> to upgrade it).
>> To see which version of libxml2 is installed on your system do rpm -aq |
>> grep libxml2.
>> Configure your environment:
>> export LIBXML2_LIB=/usr/lib
>> export LIBXML2_INCLUDE=/usr/include/libxml2
>>
>> * Axis2C version 0.92
>> Download axis2c-bin-0.92-linux.tar.gz from http://ws.apache.org/axis2/c.
>> From $HOME/Tuscany do tar xzf axis2c-bin-0.92-linux.tar.gz, this will
>> install Axis2C in $HOME/Tuscany/axis2c-bin-0.92-linux.
>> Configure your environment:
>> export AXIS2C_HOME=$HOME/tuscany/axis2c- bin-0.92-linux
>> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AXIS2C_HOME/lib
>>
>>
>> Download the Tuscany C++ code:
>> From $HOME/tuscany, do svn co
>> http://svn.apache.org/repos/asf/incubator/tuscany/cpp , this will check
>> out all the source code in $HOME/tuscany/cpp.
>>
>> Configure your environment:
>> export TUSCANY_SCACPP=$HOME/tuscany/cpp/sca/deploy
>> export TUSCANY_SDOCPP=$HOME/tuscany/cpp/sdo/deploy
>> export
>> LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TUSCANY_SDOCPP/lib:$TUSCANY_SCACPP/lib
>>
>> The builds use the GNU automake + configure tools, which nicely analyze
>> your environment and generate all the make files you need.
>>
>> To build the SDO C++ runtime:
>> cd $HOME/tuscany/cpp/sdo
>> ./autogen.sh
>> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
>> make
>> make install
>> cd $HOME/tuscany/cpp/sdo/samples
>> ./autogen.sh
>> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
>> make
>> make install
>>
>> Note: Tuscany already has build.sh scripts that do all of this for you,
>> but I wanted to use the individual commands to understand what was going
>> on at each step.
>> Also, when you make code changes in general you just run make and make
>> install and not the whole set of steps.
>>
>> To run the the SDO test suite:
>> cd $HOME/tuscany/cpp/sdo
>> ./sdotest.sh
>>
>> To build the SCA C++ runtime:
>> cd $HOME/tuscany/cpp/sca
>> ./autogen.sh
>> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
>> make
>> make install
>> cd $HOME/tuscany/cpp/sdo/samples
>> ./autogen.sh
>> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
>> make
>> make install
>>
>> To run the SCA runtime tests:
>> cd $HOME/tuscany/cpp/sdo
>> ./scatest.sh
>>
>> To run the SCA calculator sample:
>> cd $HOME/tuscany/cpp/sca/deploy/samples/Calculator/deploy/bin
>> ./runclient.sh
>>
>> Overall it was pretty simple. I hope these steps will help people set
>> their C++ build environment and come help us!
>>
>> Could other people in the group try these steps in other environments
>> and see if they work for them?
>> Do we have similar steps for Windows?
>>
>> -- 
>> Jean-Sebastien
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
>> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>>
>>
>

David,
Thanks for trying this on your system. Would you mind posting a brief 
description of the steps you followed to install the missing prereqs? 
Then I'll merge them with my steps into a Wiki page. Thanks!

The first error in your make log:

../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:26:30: error: 
libxml/xmlstring.h: No such file or directory

complains that libxml/xmlstring cannot be found.

Could it be a problem with the location of libxml2 on your system and 
the LIBXML2_INCLUDE variable? Do you have a 
$LIBXML2_INCLUDE/libxml/xmlstring.h?

-- 
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


Re: [C++] Steps to setup a Tuscany C++ development and build environment

Posted by David Wheeler <wh...@gmail.com>.
Well, I tried compliling it under Ubuntu and it isn't quite working.
Ubuntu starts out as a very basic install so in order to compile it, I had
to install not just Java, Ant, Svn, and Axis2C, but g++, make, automake, and
libtool.
It is also a debian based system so it uses apt instead of rpm for package
managment, so the command to check for libxml2 is  "sudo apt-cache show
libxml2"

Anyhow, once that is all installed augen.sh runs fine, configure runs fine,
but make fails.

It might have to do with my gcc version which is 4.0.3

Here is a dump of make's output:

make  all-recursive
make[1]: Entering directory `/home/dwheeler/tuscany/cpp/sdo'
Making all in runtime
make[2]: Entering directory `/home/dwheeler/tuscany/cpp/sdo/runtime'
Making all in core
make[3]: Entering directory `/home/dwheeler/tuscany/cpp/sdo/runtime/core'
Making all in src
make[4]: Entering directory
`/home/dwheeler/tuscany/cpp/sdo/runtime/core/src'
Making all in commonj
make[5]: Entering directory
`/home/dwheeler/tuscany/cpp/sdo/runtime/core/src/commonj'
Making all in sdo
make[6]: Entering directory
`/home/dwheeler/tuscany/cpp/sdo/runtime/core/src/commonj/sdo'
if /bin/sh ../../../../../libtool --tag=CXX --mode=compile g++
-DHAVE_CONFIG_H -I. -I. -I../../../../.. -I../ ../../../../runtime/core/src
-I    -g -O2 -MT ChangedDataObjectListImpl.lo -MD -MP -MF
".deps/ChangedDataObje ctListImpl.Tpo" -c -o ChangedDataObjectListImpl.lo
ChangedDataObjectListImpl.cpp; \
        then mv -f ".deps/ChangedDataObjectListImpl.Tpo"
".deps/ChangedDataObjectListImpl.Plo"; else rm -f ".
deps/ChangedDataObjectListImpl.Tpo"; exit 1; fi
mkdir .libs
 g++ -DHAVE_CONFIG_H -I. -I. -I../../../../..
-I../../../../../runtime/core/src -I -g -O2 -MT ChangedDataObje
ctListImpl.lo -MD -MP -MF .deps/ChangedDataObjectListImpl.Tpo -c
ChangedDataObjectListImpl.cpp  -fPIC -DPIC - o
.libs/ChangedDataObjectListImpl.o
In file included from
../../../../../runtime/core/src/commonj/sdo/ChangeSummaryImpl.h:30,
                 from
../../../../../runtime/core/src/commonj/sdo/DataObjectImpl.h:41,
                 from ChangedDataObjectListImpl.cpp:31:
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:26:30: error:
libxml/xmlstring.h: No such file or directory
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error:
expected ',' or '...' before '*' token
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error: ISO
C++ forbids declaration of 'xmlChar ' with no type
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error:
expected ',' or '...' before '*' token
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error: ISO
C++ forbids declaration of 'xmlChar ' with no type
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:48: error:
'commonj::sdo::SDOXMLString::SDOXMLStri ng(int)' cannot be overloaded
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:45: error: with
'commonj::sdo::SDOXMLString::SDOXM LString(int)'
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:57: error:
expected ',' or '...' before '*' token
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:57: error: ISO
C++ forbids declaration of 'xmlChar ' with no type
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:60: error:
expected ',' or '...' before '*' token
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:60: error: ISO
C++ forbids declaration of 'xmlChar ' with no type
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:67: error: ISO
C++ forbids declaration of 'type na me' with no type
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:67: error:
'operator const int' does not name a ty pe
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:83: error: ISO
C++ forbids declaration of 'xmlChar ' with no type
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:83: error:
expected ';' before '*' token
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h: In member
function 'commonj::sdo::SDOXMLString::o perator const char*() const':
../../../../../runtime/core/src/commonj/sdo/SDOXMLString.h:66: error:
'xmlForm' was not declared in this scop e
make[6]: *** [ChangedDataObjectListImpl.lo] Error 1



On 7/19/06, Jean-Sebastien Delfino <jsdelfino@apache.org > wrote:
>
> I just finished setting up a Tuscany C++ development and build
> environment on my Linux machine and thought it would be useful to share
> the steps I went through.
>
> I am using Redhat Linux Enterprise 4, but the same steps should work on
> other Linux systems like Fedora Core or Ubuntu for example.
> These steps take no more than 15 mns to complete, starting from scratch.
> After you complete them you should be all set to build the Tuscany C++
> runtime, and start contributing :)
>
> From a shell prompt, create a $HOME/tuscany directory.
>
> Install the following prerequisites:
>
> * Subversion - SVN version 1.3.0 or later is good (most Linux distros
> already include SVN).
>
> * Ant and a Java JDK are required by the SCA code generation tool used
> to generate proxies and wrappers for C++ components.
> Download apache-ant-1.6.5-bin.tar.gz from
> http://ant.apache.org/bindownload.cgi.
> From $HOME/tuscany do tar xzf apache-ant-1.6.5-bin.tar.gz.
> Configure your environment:
> export ANT_HOME=$HOME/tuscany/apache-ant-1.6.5
> PATH=$ANT_HOME/bin:$PATH
>
> Download jdk-1_5_0_06-linux-i586.bin from
> http://java.sun.com/j2se/1.5.0/download.jsp .
> From $HOME/tuscany run jdk-1_5_0_06-linux-i586.bin, this will extract
> the JDK in $HOME/tuscany/jdk1.5.0_06.
> Configure your environment:
> export JAVA_HOME=$HOME/tuscany/jdk1.5.0_06
> PATH=$JAVA_HOME/bin:$PATH
>
> * Libxml2 2.6.20 or later
> Libxml2 is already in most Linux distros, just check that you have
> version 2.6.20 or later (my RHEL4 system had an older version and I had
> to upgrade it).
> To see which version of libxml2 is installed on your system do rpm -aq |
> grep libxml2.
> Configure your environment:
> export LIBXML2_LIB=/usr/lib
> export LIBXML2_INCLUDE=/usr/include/libxml2
>
> * Axis2C version 0.92
> Download axis2c-bin-0.92-linux.tar.gz from http://ws.apache.org/axis2/c.
> From $HOME/Tuscany do tar xzf axis2c-bin-0.92-linux.tar.gz, this will
> install Axis2C in $HOME/Tuscany/axis2c-bin-0.92-linux.
> Configure your environment:
> export AXIS2C_HOME=$HOME/tuscany/axis2c- bin-0.92-linux
> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AXIS2C_HOME/lib
>
>
> Download the Tuscany C++ code:
> From $HOME/tuscany, do svn co
> http://svn.apache.org/repos/asf/incubator/tuscany/cpp , this will check
> out all the source code in $HOME/tuscany/cpp.
>
> Configure your environment:
> export TUSCANY_SCACPP=$HOME/tuscany/cpp/sca/deploy
> export TUSCANY_SDOCPP=$HOME/tuscany/cpp/sdo/deploy
> export
> LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TUSCANY_SDOCPP/lib:$TUSCANY_SCACPP/lib
>
> The builds use the GNU automake + configure tools, which nicely analyze
> your environment and generate all the make files you need.
>
> To build the SDO C++ runtime:
> cd $HOME/tuscany/cpp/sdo
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
> make
> make install
> cd $HOME/tuscany/cpp/sdo/samples
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
> make
> make install
>
> Note: Tuscany already has build.sh scripts that do all of this for you,
> but I wanted to use the individual commands to understand what was going
> on at each step.
> Also, when you make code changes in general you just run make and make
> install and not the whole set of steps.
>
> To run the the SDO test suite:
> cd $HOME/tuscany/cpp/sdo
> ./sdotest.sh
>
> To build the SCA C++ runtime:
> cd $HOME/tuscany/cpp/sca
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
> make
> make install
> cd $HOME/tuscany/cpp/sdo/samples
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
> make
> make install
>
> To run the SCA runtime tests:
> cd $HOME/tuscany/cpp/sdo
> ./scatest.sh
>
> To run the SCA calculator sample:
> cd $HOME/tuscany/cpp/sca/deploy/samples/Calculator/deploy/bin
> ./runclient.sh
>
> Overall it was pretty simple. I hope these steps will help people set
> their C++ build environment and come help us!
>
> Could other people in the group try these steps in other environments
> and see if they work for them?
> Do we have similar steps for Windows?
>
> --
> Jean-Sebastien
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>

Re: [C++] Steps to setup a Tuscany C++ development and build environment

Posted by Pete Robbins <ro...@googlemail.com>.
Great stuff! We should add this to the wiki/website.

On 19/07/06, Jean-Sebastien Delfino <js...@apache.org> wrote:
>
> I just finished setting up a Tuscany C++ development and build
> environment on my Linux machine and thought it would be useful to share
> the steps I went through.
>
> I am using Redhat Linux Enterprise 4, but the same steps should work on
> other Linux systems like Fedora Core or Ubuntu for example.
> These steps take no more than 15 mns to complete, starting from scratch.
> After you complete them you should be all set to build the Tuscany C++
> runtime, and start contributing :)
>
> From a shell prompt, create a $HOME/tuscany directory.
>
> Install the following prerequisites:
>
> * Subversion - SVN version 1.3.0 or later is good (most Linux distros
> already include SVN).
>
> * Ant and a Java JDK are required by the SCA code generation tool used
> to generate proxies and wrappers for C++ components.
> Download apache-ant-1.6.5-bin.tar.gz from
> http://ant.apache.org/bindownload.cgi.
> From $HOME/tuscany do tar xzf apache-ant-1.6.5-bin.tar.gz.
> Configure your environment:
> export ANT_HOME=$HOME/tuscany/apache-ant-1.6.5
> PATH=$ANT_HOME/bin:$PATH
>
> Download jdk-1_5_0_06-linux-i586.bin from
> http://java.sun.com/j2se/1.5.0/download.jsp.
> From $HOME/tuscany run jdk-1_5_0_06-linux-i586.bin, this will extract
> the JDK in $HOME/tuscany/jdk1.5.0_06.
> Configure your environment:
> export JAVA_HOME=$HOME/tuscany/jdk1.5.0_06
> PATH=$JAVA_HOME/bin:$PATH
>
> * Libxml2 2.6.20 or later
> Libxml2 is already in most Linux distros, just check that you have
> version 2.6.20 or later (my RHEL4 system had an older version and I had
> to upgrade it).
> To see which version of libxml2 is installed on your system do rpm -aq |
> grep libxml2.
> Configure your environment:
> export LIBXML2_LIB=/usr/lib
> export LIBXML2_INCLUDE=/usr/include/libxml2
>
> * Axis2C version 0.92
> Download axis2c-bin-0.92-linux.tar.gz from http://ws.apache.org/axis2/c.
> From $HOME/Tuscany do tar xzf axis2c-bin-0.92-linux.tar.gz, this will
> install Axis2C in $HOME/Tuscany/axis2c-bin-0.92-linux.
> Configure your environment:
> export AXIS2C_HOME=$HOME/tuscany/axis2c-bin-0.92-linux
> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AXIS2C_HOME/lib
>
>
> Download the Tuscany C++ code:
> From $HOME/tuscany, do svn co
> http://svn.apache.org/repos/asf/incubator/tuscany/cpp, this will check
> out all the source code in $HOME/tuscany/cpp.
>
> Configure your environment:
> export TUSCANY_SCACPP=$HOME/tuscany/cpp/sca/deploy
> export TUSCANY_SDOCPP=$HOME/tuscany/cpp/sdo/deploy
> export
> LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TUSCANY_SDOCPP/lib:$TUSCANY_SCACPP/lib
>
> The builds use the GNU automake + configure tools, which nicely analyze
> your environment and generate all the make files you need.
>
> To build the SDO C++ runtime:
> cd $HOME/tuscany/cpp/sdo
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
> make
> make install
> cd $HOME/tuscany/cpp/sdo/samples
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SDOCPP --enable-static=no
> make
> make install
>
> Note: Tuscany already has build.sh scripts that do all of this for you,
> but I wanted to use the individual commands to understand what was going
> on at each step.
> Also, when you make code changes in general you just run make and make
> install and not the whole set of steps.
>
> To run the the SDO test suite:
> cd $HOME/tuscany/cpp/sdo
> ./sdotest.sh
>
> To build the SCA C++ runtime:
> cd $HOME/tuscany/cpp/sca
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
> make
> make install
> cd $HOME/tuscany/cpp/sdo/samples
> ./autogen.sh
> ./configure --prefix=$TUSCANY_SCACPP --enable-static=no
> make
> make install
>
> To run the SCA runtime tests:
> cd $HOME/tuscany/cpp/sdo
> ./scatest.sh
>
> To run the SCA calculator sample:
> cd $HOME/tuscany/cpp/sca/deploy/samples/Calculator/deploy/bin
> ./runclient.sh
>
> Overall it was pretty simple. I hope these steps will help people set
> their C++ build environment and come help us!
>
> Could other people in the group try these steps in other environments
> and see if they work for them?
> Do we have similar steps for Windows?
>
> --
> Jean-Sebastien
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: tuscany-dev-help@ws.apache.org
>
>


-- 
Pete