X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f Newsgroups: comp.lang.perl.misc,comp.os.msdos.djgpp Subject: Re: Perldoc error: "Could not create temp file" From: "A. Sinan Unur" <1usa AT llenroc DOT ude DOT invalid> References: Organization: Cornell University Message-ID: User-Agent: Xnews/2006.08.24 Lines: 69 NNTP-Posting-Host: 929f3da87c874144d09576f2d7f99e05 X-Complaints-To: abuse AT worldnet DOT att DOT net X-Trace: bgtnsc04-news.ops.worldnet.att.net 1208442770 929f3da87c874144d09576f2d7f99e05 (Thu, 17 Apr 2008 14:32:50 GMT) NNTP-Posting-Date: Thu, 17 Apr 2008 14:32:50 GMT Date: Thu, 17 Apr 2008 14:32:50 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com "Robbie Hatley" wrote in news:YNqdnXMJMcgtkJrVnZ2dnUVZ_qOknZ2d AT giganews DOT com: > > "A. Sinan Unur" wrote: > >> "Robbie Hatley" wrote: >> >> > wd=C:\djgpp\bin >> > %bash >> > bash-2.04$ perldoc perl >> > Error in tempfile() using c:/djgpp/tmp/XXXXXXXXXX: Could not >> > create temp file c: /djgpp/tmp/zkQ06tqlcH: Invalid argument >> > (EINVAL) at /dev/env/DJDIR/lib/perl5/Pod /Perldoc.pm line 1483 >> > bash-2.04$ exit >> > exit >> > wd=C:\djgpp\bin >> > %perl perldoc perl >> > Error in tempfile() using C:/TEMP/XXXXXXXXXX: Could not create >> > temp file C:/TEMP /0mfgo64w9W: Invalid argument (EINVAL) at >> > /dev/env/DJDIR/lib/perl5/Pod/Perldoc.p m line 1483 >> > wd=C:\djgpp\bin >> > % >> >> You have a permissions problem. Either c:\djgpp\tmp does not >> exist or you do not have permissions to write there. Same applies >> to C:\TEMP > ... > First of all, in that situation, the error is different, > and says "Permission Denied" (EACESS or EPERM) not > "Invalid Argument (EINVAL)". Looking more carefully at the error message you posted, note that the actual error is coming from File::Temp::_gettemp. $open_success = sysopen($fh, $path, $flags, 0600); is returning the error condition. So, the invalid value being passed is either in $flags or the umask. I suspect $flags. On a hunch, could you check what the following script prints: #!/usr/bin/perl use strict; use warnings; use Fcntl; my $EXLOCK = eval { local $SIG{__DIE__} = sub {}; local $SIG{__WARN__} = sub {}; &Fcntl::O_EXLOCK(); }; print "'$EXLOCK'\n"; __END__ Sinan -- A. Sinan Unur <1usa AT llenroc DOT ude DOT invalid> (remove .invalid and reverse each component for email address) comp.lang.perl.misc guidelines on the WWW: http://www.rehabitation.com/clpmisc/