Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

I normally develop perl code on unix system, but recently I've had to develop some applications that run on both unix & windows machines. My code goes through distinct development, testing, & operational stages on the same machine & standard (for us) programming practice is to keep all variables whose values are unique in these 3 environments in a file named env.pm. This allows us to deploy the same piece of software to any one of the 3 environments without having to change the core code. We've done this with countless applications running on unix systems, but using the environment file fails under Windows. If I rename env.pm to something like penv.pm, everything is OK, but Windows seems unable to handle a file named env.pm. I suspect that there is a conflict with some other file named env.pm that is part of ActiveState's perl distribution. Can anyone advise?

Replies are listed 'Best First'.
Re: Perl, Windows, & env.pm
by derby (Abbot) on Aug 14, 2007 at 18:18 UTC

    Case sensitivity issues with the core module Env?

    -derby
Re: Perl, Windows, & env.pm
by runrig (Abbot) on Aug 14, 2007 at 18:38 UTC
    It's Windows (lack of) case sensitivity that's causing the problems as derby points out. Best thing to do might be to make your env module something like OurCompanyName::Env, or OurProductName::Env (i.e. have a custom directory for your company/product specific modules).
      It's Windows (lack of) case sensitivity....

      What's really sad is that the file system (NTFS) is actually case sensitive (it has to be for POSIX compliance but I'm not sure if that's why that was designed in).

        the file system (NTFS) is actually case sensitive
        It's not. It's only case preserving.


        holli, /regexed monk/