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

Hi all,

Mac OS 10.5, ActivePerl 5.10. (I wouldn't have chosen a Mac, but it wasn't my choice....)

The following two lines of code:

use PDF::Create; my $pdf = new PDF::Create('filename' => 'out.pdf', 'Version' => 1.3);

gives me the following error:

$ perl pdftest.txtPDF::Create.pm: out.pdf: Permission denied at pdftest.txt line 2 Can't use an undefined value as a symbol reference at .../lib/PDF/Crea +te.pm line 76.

PDF::Create source code's constructor code includes the following:

72 elsif (defined $params{'filename'}) { 73 $self->{'filename'} = $params{'filename'}; 74 my $fh = new FileHandle "> $self->{'filename'}"; 75 carp "PDF::Create.pm: $self->{'filename'}: $!\n" unless defined +$fh; 76 binmode $fh; 77 $self->{'fh'} = $fh; 78 }

Anyhow, how do I get the OS to permit creation of a new PDF file? Some sort of 'sudo' dropped into my code somewhere? Or am I more lost than I guess?

Forever a newbie,

cypress

Replies are listed 'Best First'.
Re: file creation permission question
by moritz (Cardinal) on Dec 16, 2009 at 17:27 UTC
    Just start your program in a directory where you have write permissions. Usually your home directory qualifies for that, or a directory for temporary files.

      Thanks!