On Mon, 2007-04-23 at 04:48 -0500, Deepak Mallya wrote: > Clinton, > I tried it ..It gives me this at the line I added warn. > Warning: something's wrong at newprocessquery.pl line 24. > Undefined subroutine &main::retrieve called at newprocessquery.pl line > 25. > > I tried printing @INC after adding the use lib..It gives me the path > at the front of @INC ..i dont understant y it isnt able to find > Storable.pm when I use retrieve.. >
Hi Deepak I'm not sure exactly what you are doing in your code, so: 1) I assume that you have successfully managed to use the version of Storable in your home directory to create the file in the first place. In which case: 2) Go back to your original CGI script, the one that resulted in the "can't read v2.7 files" error, and just before the line that gives you that error, add this: use Data::Dumper; warn Dumper(\%INC); in the error log, look for this output, which should include a key called 'Storable.pm' along with the path to the version of Storable that it is using. My bet is that it is the Storable installed on your system, and not the one in your home directory. 3) So then try this: #!/usr/bin/perl (or whatever the path to your perl is) use strict; use warnings; use lib '/home/......'; # The path to your version of Storable use Storable; use Data::Dumper; warn Dumper(\%INC); ---------------------------- This should print the new path. 4) Having got this working, try it in your main code, just remember only to load the other modules AFTER you have loaded your version of Storable. >
