Thanks!

That worked great.

-----Original Message-----
From: Tanton Gibbs [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, July 09, 2002 8:27 PM
To: [EMAIL PROTECTED]
Subject: Re: Problem adding to @INC


Try

use lib "C:/websites/blessinganimal/cgi-bin/makechanges";

at the top of your program.  That will add it to the @INC array at compile
time.  Since use works at compile time, it was trying to import
TemplateHandler before the $main::INC[$#main::INC] = ... statement was
executed.

Tanton
----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, July 09, 2002 10:18 PM
Subject: Problem adding to @INC


> Hi,
>
> I'm very new to perl, although I've used many other languages for CGI/DB
> programming.  I think this must be a simple problem, but I've tried all my
> reference books without any luck.
> I've been using some modules I wrote (not using h2x yet) on my test
> server/work computer without any problem.  I've always left the modules in
> the same directory as the .pl file, and perl would find it without any
> errors.
>
> I test on a Win XP Home Ed running ActivePerl 5.6, and Apache.
>
> I then tried to send it to a production server, same files, running Win
NT,
> IIS, and ActivePerl.  The only scripts that fail are the ones that try to
> use modules in the same directory.  I get the error:
>
>
> __START__
>
> Can't locate TemplateHandler.pm in @INC (@INC contains: C:/Perl/lib
> C:/Perl/site/lib .) at
> c:\websites\blessinganimal\cgi-bin\makechanges\edit.plx line 15.
> BEGIN failed--compilation aborted at
> c:\websites\blessinganimal\cgi-bin\makechanges\edit.plx line 15.
>
> __END__
>
> (NOTE, I write my files as *.pl extensions, but to get CGI error messages
> (as opposed to no output), I have to save a copy with an 'plx' for some
> reason...that I really should know)
>
> The code I'm running looks like (please excuse the mess):
>
>
>
> __START__
>
> use warnings;
> use strict;
>
> print "Content-Type: text/plain\n\n"; #to simplify CGI output
>
>
>
>
> $main::INC[$#main::INC] =
"C:/websites/blessinganimal/cgi-bin/makechanges";
> # compiles at least...
>
>
>
> use TemplateHandler; #this causes all the trouble
>
>
>
> print "inc is @INC"; #prints a string with all items
> #seperated with a space, including "C:/websites/blessinganimal..."
>
>
> foreach my $item (@main::INC) {
> print "'$item'\n"; #prints it all
> }
>
> print "Hello World";
> __END__
>
>
> If I leave 'use TemplateHandler;' commented out, it runs.  If I don't it
> generates the error.
>
> The output that results if I comment out the 'use TemplateHandler;' line
is:
>
> inc is C:/Perl/lib C:/Perl/site/lib
> C:/websites/blessinganimal/cgi-bin/makechanges'C:/Perl/lib'
> 'C:/Perl/site/lib'
> 'C:/websites/blessinganimal/cgi-bin/makechanges'
> Hello World
>
>
> This is running on a server farm that doesn't give the the capacity to
tweak
> anything outside of the user directory.
> Can anyone point me in the right direction?  Adding to the @INC array
> doesn't seem to effect anything, and I don't know what else to try.
>
>
>
> Thanks!
>
>
>
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>





-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to