Charles Curley wrote:
On Wed, Dec 27, 2006 at 12:46:46AM +1030, Tim wrote:
Tim:
Anyway, the fix for this one is simple, install perl-Archive-Tar.
Hmm, well that fixes the installation on FC5. FC6 has a different error:
Can't locate LWP/UserAgent.pm in @INC (@INC contains: /usr/lib/perl5/vendor_perl /5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/s ite_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/i386-linux -thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/pe rl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/ lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_per l/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thr ead-multi /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl 5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7 /us r/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/ve ndor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8) at /usr/bin/sa-update line 92. BEGIN failed--compilation aborted at /usr/bin/sa-update line 92.
How do you work out what package it wants to fulfill its needs?
It says, "Can't locate LWP/UserAgent.pm in @INC..." So it's looking for a perl module called "LWP::UserAgent" somewhere in the list of directories that constitute the array @INC (short for "include"). A quick look at line 92 of sa-update shows that it says:
eval { use LWP::UserAgent; };
And the comment just above indicates that the reason the author used the eval trick was to bypass RPM dependency checking.
Yes, lovely of them to do so. I am almost curious enough to trawl through the SA buglist to see if there is a reason given for doing this. It seems that they don't want to pull in the deps required for sa-update into the RPMS that they ship (they as in the SpamAssassin developers). But really they should split sa-update into a separate rpm if they want its dependencies kept separate.
Next question: do you really need it? I don't have it installed, and sa-update runs and gets updates without complaining. But I don't see how sa-update can get updates without it.
Uninstalling it causes the same error as Tim reported here.
Another question is, how do you get it? A bit of checking with yum indicates that it isn't available from core, extras or livna. So you need cpan2rpm so you can pull it in from cpan.org and RPM-ize it for installation.
It's in core. You can install it like so:
sudo yum install 'perl(LWP::UserAgent)'
The 'perl(LWP::UserAgent)' thing is handy once you know how rpm does perl deps. Unfortunately it requires a little familiarity with perl before it's at all obvious I think.
I'll try to file this bug so that the Fedora packages can get fixed. Ideally it'd get corrected upstream, but I'm not going to file a bug there without investing more time trying to figure out why they're intentionally working against rpm's dep checking (and I don't have the time to do that now).