runpsync triggers error - Can't locate MacOSX/File.pm [solved]

Bill Hernandez ms at mac-specialist.com
Wed Mar 25 17:38:26 PDT 2009


Thanks to Rainer Müller for helping me get perl, psync and runsync  
fixed.

I included the steps so it will hopefully help others.


On Mar 25, 2009, at 5:16 PM, Bill Hernandez wrote:

> I just found these.
>
> http://developers.slashdot.org/article.pl?sid=09/02/18/1435227
>
> http://www.theregister.co.uk/2009/02/16/apple_update_perl_breakage/
>
> http://bulknews.typepad.com/blog/2009/02/mac-os-x-security-update-2009001-breaks-perl-cpan.html
>
>
>
>
> On Mar 25, 2009, at 1:23 PM, Bill Hernandez wrote:
>
>> I've been seeing some errors during startup in the system log for  
>> sometime now, so the other day I decided to do an archive/install  
>> of the operating system.
>>
>> I still have the same system log errors during startup, but  
>> everything seems to be working well.
>>
>> I've been using runpsync for a long time and all of the sudden it  
>> is not working as shown below:
>>
>> [2009.25.03](11:15AM) -> [roscoe] ~ $ sudo /usr/local/bin/runpsync  
>> 0 -d 0 '/' '/Volumes/Backup_24'
>> Password


Looks like your psync is using /usr/bin/perl instead of
/opt/local/bin/perl.

> WHEN I do a search for 'File.pm', I seem to find a bunch of them. Not
> quite sure what has happened ?

$ port provides
/opt/local/lib/perl5/vendor_perl/5.8.8/darwin-thread-multi-2level/ 
MacOSX/File.pm
/opt/local/lib/perl5/vendor_perl/5.8.8/darwin-thread-multi-2level/ 
MacOSX/File.pm
is provided by: p5-macosx-file

You probably don't have p5-macosx-file installed?

Rainer

Bill Hernandez wrote:
> Any other suggestions ?

You need to run psync using /opt/local/bin/perl, it seems to be using
/usr/bin/perl currently. The system provided perl will not use modules
installed by MacPorts.

Rainer

Bill Hernandez wrote:

> I normally do everything associated with MacPorts via the Terminal,
> but the other day I updated all the ports installed using
> PortAuthority, and it installed perl
>
> I changed :
>
> FROM :      #!/usr/bin/perl
> TO :        #!/opt/local/bin/perl
>
> In both /usr/bin/runpsync, and /usr/bin/psync

I assume you meant /usr/local/bin here?

> in psync I also changed :
>
> FROM :      # eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
> TO :           eval '/opt/local/bin/perl  -S $0 ${1+"$@"}'

Looks good.

> [2009.25.03](04:30PM) -> [roscoe] ~ $ sudo /usr/local/bin/runpsync 0 -
> d 0 '/' '/Volumes/Backup_5'
> Password:
> Backup begun Wed Mar 25 16:31:16 2009
> Can't locate DB_File.pm in @INC (@INC contains:
> 	/opt/local/lib/perl5/5.8.9/darwin-2level
> 	/opt/local/lib/perl5/5.8.9
> 	/opt/local/lib/perl5/site_perl/5.8.9/darwin-2level
> 	/opt/local/lib/perl5/site_perl/5.8.9
> 	/opt/local/lib/perl5/site_perl
> 	/opt/local/lib/perl5/vendor_perl/5.8.9/darwin-2level
> 	/opt/local/lib/perl5/vendor_perl/5.8.9
> 	/opt/local/lib/perl5/vendor_perl/5.8.8
> 	/opt/local/lib/perl5/vendor_perl/5.8.8/darwin-2level
> 	/opt/local/lib/perl5/vendor_perl .) at
> 	/usr/local/bin/psync line 13.
> 	
> BEGIN failed--compilation aborted at /usr/local/bin/psync line 13.
> Backup completed: Wed Mar 25 16:31:16 2009[2009.25.03](04:31PM) ->
> [roscoe] ~ $

Looks like http://trac.macports.org/ticket/18111

You need perl5.8 +db to get DB_File.pm. To add the variant to perl5.8
which you already have installed, run:
  sudo port -fn upgrade perl5.8 +db

> I just found :
>
> http://developers.slashdot.org/article.pl?sid=09/02/18/1435227
>
> http://www.theregister.co.uk/2009/02/16/apple_update_perl_breakage/

As you are using Perl from MacPorts, bugs in the system version do not
affect you in this case.

Rainer

On Mar 25, 2009, at 5:33 PM, Rainer Müller wrote:

> You need perl5.8 +db to get DB_File.pm. To add the variant to perl5.8
> which you already have installed, run:
> sudo port -fn upgrade perl5.8 +db

Rainer,

Thanks a million...

My backup is working great...

Best Regards,

Bill Hernandez
Plano, Texas



More information about the macports-users mailing list