At 5:35 PM +0100 2/2/04, Dominique Dumont wrote: >BTW, I will also need to provide access to a C library from perl. > >I currently known 3 ways of doing that: >- XS (with core perl) >- Swig [1] >- Inline::C [2] > >XS should work out of the box.
Yes, there are many extensions (including all the core ones) that build fine. Note that Perl's xsubpp does its own name mangling for symbol names longer than 32 characters, and these do not match what the C compiler generates when you compile with /NAMES=SHORTENED. This could become relevant if any of the methods below uses an alternate method for getting from XS to C. >Inline::C should also work pretty well since it generates XS code. I don't know. I remember seeing some problems on VMS with the initial release, but I don't know about the current status. >SWIG is a interface generator written in C++ (mostly g++, AFAIR, >compiling with HPUX acc was not possible). If the SWIG implementation is compiler specific, then you'll probably run into a lot of trouble. The web site claims you just need ANSI C, not even C++, so if that's true, then it should be buildable if you can generate an appropriate config.h (or whatever they store the results of the configuration in). >The first problem is to compile it on VMS. Not necessarily. You may be able to run SWIG on your interface file to generate your C code on any platform and then only compile the C on the target platform. Maybe not -- I don't know the details, but it's worth considering. -- ________________________________________ Craig A. Berry mailto:[EMAIL PROTECTED] "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser
