Please don't assume, as you seem to be doing, that if $^O isn't MSWin32 then you're running on Unix. You might be running on Cygwin, or VMS, or RISCOS, or DOS, or OS400. If you have Unix-specific code, then check that you're running on Unix, by using Devel::CheckOS.