in reply to Compiling XS modules on Windoze

As a hack, you could try removing the DIR definition from direct.h (the Open Watcom file) and see how that affects things. (Probably best to save a backup copy of any files that you amend.)

I have no idea whether making that change will lead anywhere useful. My guess is that, even if it fixes the immediate problem, it will probably break something else sooner or later.

Are you committed to using Open Watcom ? It's a rather uncommon choice of compiler.

Cheers,
Rob

Replies are listed 'Best First'.
Re^2: Compiling XS modules on Windoze
by Bloodnok (Vicar) on Jul 18, 2007 at 12:30 UTC
    TFT, Rob.

    Sadly, we are currently committed to Open Watcom ... for logistic reasons - we need a solution yesterday and there's a huge (upto 3 month) delay before new software can be installed on the network, hence we've installed Open Watcom locally. We're gambling on the M$VC compatibility of Open Watcom to provide compiled code that will work with ActiveState perl.

    The only person who got his work done by Friday was Robinson Crusoe

      If you're already panicking and denigrating your OS of choice, why not have a look at Strawberry Perl? It includes a supposedly ActiveState compatible Perl and a fitting C compiler. All you need is some fiddling with Config-heavy.pl if you want to install it in a different path than c:\strawberry-perl as is the default.

        Whilst it is the OS of choice, it isn't my choice (*NIX) but that of the current client.
        Thanx for the tip WRT Strawberry perl ... downloading as I write :-)
      We're gambling on the M$VC compatibility of Open Watcom to provide compiled code that will work with ActiveState perl.

      I think that's quite a gamble. The freely available MinGW compiler works well with ActiveState perl. Neither its direct.h nor the direct.h in any of the MSVC compilers that I have define 'DIR'.

      My best instincts tell me that you should dispense with Open Watcom and grab a compiler (preferably either MSVC++ 6.0 or MinGW) that's known to work with ActivePerl and is well supported (wrt ActivePerl).

      I take it you have your own XS modules that you need to compile ? Otherwise you could just make use of the PPM utility to install pre-compiled builds of the CPAN modules.

      Cheers,
      Rob
        I think that's quite a gamble. The freely available MinGW compiler works well with ActiveState perl. Neither its direct.h nor the direct.h in any of the MSVC compilers that I have define 'DIR'.

        My best instincts tell me that you should dispense with Open Watcom and grab a compiler (preferably either MSVC++ 6.0 or MinGW) that's known to work with ActivePerl and is well supported (wrt ActivePerl).

        Given what you say WRT the DIR macro, there's a better than even chance that you're right.

        I take it you have your own XS modules that you need to compile ? Otherwise you could just make use of the PPM utility to install pre-compiled builds of the CPAN modules.

        Yep - we've got 2 tools both of which are provided with a C++ API ... I've searched high & low for perl wrappers for the APIs ... to no avail :-( hence the question.