The Bugzilla Guide - 2.20.1 Release
Prev | Appendix B. Troubleshooting | Next

# B.7. Your vendor has not defined Fcntl macro O_NOINHERIT

This is caused by a bug in the version of File::Temp that is distributed with perl 5.6.0. Many minor variations of this error have been reported:

    Your vendor has not defined Fcntl macro O_NOINHERIT, used
    at /usr/lib/perl5/site_perl/5.6.0/File/Temp.pm line 208.

    Your vendor has not defined Fcntl macro O_EXLOCK, used
    at /usr/lib/perl5/site_perl/5.6.0/File/Temp.pm line 210.

    Your vendor has not defined Fcntl macro O_TEMPORARY, used
    at /usr/lib/perl5/site_perl/5.6.0/File/Temp.pm line 233.

Numerous people have reported that upgrading to version 5.6.1 or higher solved the problem for them. A less involved fix is to apply the following patch, which is also available as a patch file.

    --- File/Temp.pm.orig   Thu Feb  6 16:26:00 2003
    +++ File/Temp.pm        Thu Feb  6 16:26:23 2003
    @@ -205,6 +205,7 @@
         # eg CGI::Carp
         local $SIG{__DIE__} = sub {};
         local $SIG{__WARN__} = sub {};
    +    local *CORE::GLOBAL::die = sub {};
         $bit = &$func();
         1;
       };
    @@ -226,6 +227,7 @@
         # eg CGI::Carp
         local $SIG{__DIE__} = sub {};
         local $SIG{__WARN__} = sub {};
    +    local *CORE::GLOBAL::die = sub {};
         $bit = &$func();
         1;
       };

Prev | Home | Next
cannot chdir(/var/spool/mqueue) | Up | Everybody is constantly being forced to relogin