> Well, the big problem is that the compiler's finding a STAT.H file directly 
> in sys$library: which it ought not--all the system headers should be in 
> .TLB libraries, not laying about.

This particular problem is frequently the result of C<<#include <sys/stat.h> >>,
in which the F<sys/> causes the compiler to go looking outside the text
library.  Perl's Descrip.MMS defines SYS to accomodate this Unixish practice in
the mainline code, and I expect what's happening is that the free-standing
F<stat.h> is being included successfully from F<perl.h>, then F<unixio.h>
is pulled in later from F<vmsish.h>, and in turn says C<<#include <stat.h> >>
or its moral equivalent, at which point the compiler dutifully pulls STAT from
the text library, and bang.

Two workarounds spring to mind:

    1. Edit perl.h so that it includes F<stat.h> instead of F<sys/stat.h>.
    2. Extract the current F<stat.h> from the text library and put it in
       some handy directory, then edit Descrip.MMS to point the logical
        SYS at it.

I hope this helps.

Regards,
Charles Bailey  [EMAIL PROTECTED]

Reply via email to