|
|
Subject: Re: Problem building Xerces 2.8.0 under Cygwin / Windows - msg#00024
List: text.xml.xerces-c.user
Lars Uffmann wrote:
David Bertoni wrote:
Why not do:
runConfigure -p cygwin -c gcc -x g++ --prefix=/usr
> then do a make install, like similar autoconf-built packages? I would
> recommend /usr/local instead of /usr, but that's really up to you.
Because I'm ignorant ;) Thanks a lot - the option for the runConfigure
script is -P /usr/local btw - which is then passed on as
--prefix=/usr/local
Yes, I forgot about the special -P syntax -- sorry about that.
And whoop-de-doo - it's working! :)
I had to read a couple of error messages first, however, to recall that
"make install" requires a preceeding "make" usually :)
$ XERCESCROOT=/home/lars/xerces-c-src_2_8_0
$ export XERCESCROOT
$ make clean
$ runConfigure -p cygwin -c gcc -x g++ -P /usr/local
$ make
$ make install
Et voilá!
-> /usr/local/include has the include directory xercesc
-> /usr/local/lib has the libraries
-> /usr/local/bin has the windows-dlls
Only downside is, for the execution of the windows-application built
with gnu, I still need to manually copy the dll-files into
c:\windows\system32 - is there a way to tell make install to use that
directory as target for the binaries?
--bindir might work, but I've never tried it before. On the other hand,
I'm not sure you want to copy a bunch of executables there. Why don't you
just modify the path?
The Cygwin binaries are built to be run within the Cygwin environment,
so the environment takes care of the symlinks, etc. If you really
want to run Xerces-C binaries outside of Cygwin, you might try using
Mingw, or just using the free version of Visual Studio.
I'm not sure I understand - what I am doing right now, with the
.dll-files in windows' system32 folder, and compiling my application
with the gnu toolchain, seems to be working fine (alternatively, having
the .dll-files in the program directory, everything's working just as
fine). At the end of the day, all I need to port my application to
another windows system, is to copy the application executable & the
required DLLs to the target folder, and run it from there.
Not necessarily true. The Xerces-C binaries built under cygwin will have a
dependency on the Cygwin DLL, so the target machine will need to have
Cygwin installed. Mingw does not link against anything other than the
Microsoft run-time libraries, so you don't need Cygwin with it.
Dave
Was this page helpful?
Thread at a glance:
Previous Message by Date:
click to view message preview
Re: build problem on mac
Boris,
Right before I checked my email I decided to do something similar.
However, as I have now found out, su is not allowed on OSX by default.
So to get around that problem I just did:
sudo bash
export XERCESCROOT ....
make install
Little bit of a pain but now everything is installed correctly! Thanks
for your help.
On Jan 9, 2008 2:19 AM, Boris Kolpackov <boris@xxxxxxxxxxxxxxxxx> wrote:
> Hi John,
>
> John Yamokoski <yamokosk@xxxxxxxxx> writes:
>
>
> > I run "sudo make install" I get the error mentioned previously.
> > But if I exclude sudo and run "make install" under my permissions,
> > obviously I will get permission errors but it looks as though its
> > correctly using the XERCESCROOT variable:
>
> Which probably means that sudo unsets the XERCESCROOT variable. The
> following should work:
>
> $ su
> $ export XERCESCROOT=...
>
> $ make install
>
> Boris
>
> --
> Boris Kolpackov
> Code Synthesis Tools CC
> http://www.codesynthesis.com
> Open-Source, Cross-Platform C++ XML Data Binding
>
Next Message by Date:
click to view message preview
XML Schema API usage
I am having trouble determining the level of support provided for "XML
Schema API" in Xerces-C.
It seems some support is available...
"This specification is implemented in Apache Xerces2 Java Parser.
There is also a C++ binding and implementation for this specification
in Apache Xerces C++ Parser."
-- (http://www.w3.org/Submission/2004/SUBM-xmlschema-api-20040122/)
However, I am having trouble locating this capability in the API or
finding any examples of its use.
Previous Message by Thread:
click to view message preview
Re: Problem building Xerces 2.8.0 under Cygwin / Windows
David Bertoni wrote:
Why not do:
runConfigure -p cygwin -c gcc -x g++ --prefix=/usr
> then do a make install, like similar autoconf-built packages? I would
> recommend /usr/local instead of /usr, but that's really up to you.
Because I'm ignorant ;) Thanks a lot - the option for the runConfigure
script is -P /usr/local btw - which is then passed on as --prefix=/usr/local
And whoop-de-doo - it's working! :)
I had to read a couple of error messages first, however, to recall that
"make install" requires a preceeding "make" usually :)
$ XERCESCROOT=/home/lars/xerces-c-src_2_8_0
$ export XERCESCROOT
$ make clean
$ runConfigure -p cygwin -c gcc -x g++ -P /usr/local
$ make
$ make install
Et voilá!
-> /usr/local/include has the include directory xercesc
-> /usr/local/lib has the libraries
-> /usr/local/bin has the windows-dlls
Only downside is, for the execution of the windows-application built
with gnu, I still need to manually copy the dll-files into
c:\windows\system32 - is there a way to tell make install to use that
directory as target for the binaries?
The Cygwin binaries are built to be run within the Cygwin environment,
so the environment takes care of the symlinks, etc. If you really want
to run Xerces-C binaries outside of Cygwin, you might try using Mingw,
or just using the free version of Visual Studio.
I'm not sure I understand - what I am doing right now, with the
.dll-files in windows' system32 folder, and compiling my application
with the gnu toolchain, seems to be working fine (alternatively, having
the .dll-files in the program directory, everything's working just as
fine). At the end of the day, all I need to port my application to
another windows system, is to copy the application executable & the
required DLLs to the target folder, and run it from there.
All problems concerning the implementation of Xerces on my development
computer solved! :)
Look forward to questions incoming about the actual USE of Xerces-C from
someone who has only done XML parsing under PHP with domxml before... *g*
Best Regards,
Lars
Next Message by Thread:
click to view message preview
Re: Problem building Xerces 2.8.0 under Cygwin / Windows
David Bertoni wrote:
--bindir might work, but I've never tried it before. On the other hand,
I'm not sure you want to copy a bunch of executables there. Why don't
you just modify the path?
Actually I was not making myself clear :) I didn't wanna copy the
executables there, just the dynamic link libraries. And yes, modifying
the path would work, I suppose - if I make sure all new
packages/libraries I install under cygwin put their libraries in the
same place - otherwise adding a new path everytime would sort of defy
the idea behind this.
The Cygwin binaries are built to be run within the Cygwin
environment, so the environment takes care of the symlinks, etc. If
you really want to run Xerces-C binaries outside of Cygwin, you might
try using Mingw, or just using the free version of Visual Studio.
Visual Studio is absolutely out of the question :) No M$ products
whenever I can avoid it. No, I'm not a general Microsoft hater, I do
appreciate the one good software that has come out of Redmond, being MS
Access ;) But apart from that, yes, Microsoft is teh shit *g*
Not necessarily true. The Xerces-C binaries built under cygwin will
have a dependency on the Cygwin DLL, so the target machine will need to
have Cygwin installed. Mingw does not link against anything other than
the Microsoft run-time libraries, so you don't need Cygwin with it.
That's an argument in favour of using MinGw, but so far, it seems all I
need to do to run cygwin-built applications on other systems, is the
cygwin1.dll - or was that just working because I tested a very simple
(network socket demonstration) and I will run into more problems once I
use more funcionality?
Thanks again!
Lars
--
Dipl.-Ing. Lars Uffmann
Microgravity User Support Center (MUSC)
Deutsches Zentrum für Luft- und Raumfahrt e.V.
Linder Höhe
D-51147 Köln
phone: 02203 601-2171
http://www.dlr.de/musc
|
|