"Mark Riehl" <[EMAIL PROTECTED]> writes: > Jason - I've been looking at this on and off for a few weeks. We've > got a project (under Win2k) that requires an XML parser in C++ and > Perl. We're using Xerces-C, so I'd like to use Xerces-P so that we > have consistent XML parser APIs.
Right, that makes sense. The API's will be *nearly* identical. The only difference is that I've simplified some things to work using Perls builtin data types: strings, arrays, and hashes. > In a nutshell, I think I need to do the following: > > 1. Install one of the latest nightly builds of Xerces-C > 2. Modify Makefile.PL so that I can compile Xerces-P using MS Visual C++ 6 > off the command line. One issue is how perl was built. Presumably you're using ActiveState Perl, which I believe gets compiled using VC++. In order for Perl to build it's modules, it keeps track of all the configuration information that was generated when Perl was built. All this info is stored in the Perl module, Config.pm. When you configure a new module, like XML::Xerces, you need to have a script, Makefile.PL, which tells Perl how to build the new module. Most of these scripts are really simple, and simply invoke the command ExtUtils::MakeMaker::WriteMakefile() with a few parameters. Perl then recursively descends the module directories and creates Makefiles based on your configuration info and the info supplied by the module author. > One question - what is the end result of the build, i.e., what is missing > for Xerces-P to run under Windows? Is the end product a dll? I've worked > with C++ for years, but I'm a little new to Perl and I'm having a little > trouble seeing the dependencies. Two pieces: a dll, and a Perl module, Xerces.pm. I'm hoping that 'make install' will just 'Do The Right Thing', but if not it shouldn't be too hard to figure out where ActiveState wants things to be. > I've also got a Linux box here (Red Hat 7.1), so I can experiment a > bit and get familiar with the process on a supported platform. Ok. sounds like a plan. Let me know how it goes, jas. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
