Summary: | emerge -u =mail-filter/spamassassin-3.3.1-r3 fails due to missing spamc/Makefile | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Stephen J. Turnbull <stephen> |
Component: | Current packages | Assignee: | Gentoo Perl team <perl> |
Status: | RESOLVED DUPLICATE | ||
Severity: | normal | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
spamassassin build log full of lies about what isn't installed
Output of "perl -V" Output of "grep DNS.pm ..." |
Description
Stephen J. Turnbull
2010-08-17 04:33:21 UTC
Created attachment 243303 [details]
spamassassin build log full of lies about what isn't installed
- Which perl version do you have installed? - Did you upgrade your perl recently? - Did you change useflags of perl recently? - Did you run `perl-cleaner --all` after upgrading/changing useflags? (Attach `perl -V` and `grep DNS.pm /var/db/pkg/dev-perl/Net-DNS-*/CONTENTS` please.) (In reply to comment #2) > - Which perl version do you have installed? 5.12.1-r1 > - Did you upgrade your perl recently? The binary is dated July 21. > - Did you change useflags of perl recently? No, I didn't. > - Did you run `perl-cleaner --all` after upgrading/changing useflags? No. I just tried running it, and it blew up, saying These are the packages that would be merged, in order: Calculating dependencies... done! emerge: there are no ebuilds to satisfy "dev-db/postgresql:0". * perl-cleaner is stopping here: * Fix the problem and start perl-cleaner again. emerge -s postgresql says: * dev-db/postgresql Latest version installed: 8.2.14 Homepage: http://www.postgresql.org/ Description: Sophisticated and powerful Object-Relational DBMS. License: POSTGRESQL ls -d /usr/portage/dev-db/postgresql* says: /usr/portage/dev-db/postgresql-base /usr/portage/dev-db/postgresql-server /usr/portage/dev-db/postgresql-docs Hm. Note that the only tricky thing I ever do with emerge is (1) to do USE=whatever-emerge-wants emerge some-package, (2) to suppress tests with FEATURES=-test, and to suppress badly broken ebuilds by adding a fully-qualifed atom to the mask file. I rarely mess with use-flags at all. > (Attach `perl -V` and `grep DNS.pm /var/db/pkg/dev-perl/Net-DNS-*/CONTENTS` > please.) Done. Created attachment 243315 [details]
Output of "perl -V"
Created attachment 243317 [details]
Output of "grep DNS.pm ..."
As you can see Net::DNS is installed at /usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux/Net/DNS.pm but the path /usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux/ is not in @INC. So perl can't find it. You have to reinstall the modules after upgrading from a binary incompatible perl version and that's what perl-cleaner does. dev-db/postgresql was removed from the tree five weeks ago. You should upgrade to postgres-{base,server}. This is probably not possible now if some of the not reinstalled perl modules are needed for the upgrade. But perl-cleaner prints the `emerge ...$lotofpackages` command before it fails. I would take this and remove dev-db/postgresql from it and try it manually. (In reply to comment #0) > This ebuild totally sucks. Well, that's the truth, and AFAICS it needs to be > redone from square 1. Do not pass GO, no way in hell do you deserve $200. For some reason, I cannot see your improved ebuild attached to this bug. You seem to have forgotten to attach it, after writing it in your free time providing it for free to everyone who would like to use it, even though some people would write that your ebuild totally sucks - and that's the truth. (In reply to comment #6) > As you can see Net::DNS is installed at > /usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux/Net/DNS.pm > but the path /usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux/ is not in @INC. > So perl can't find it. > > You have to reinstall the modules after upgrading from a binary incompatible > perl version and that's what perl-cleaner does. No, it doesn't. It fails totally, as you see in my report. The system continues to work, however, and other failures are traceable to breakage in perl-cleaner only by an expert. > dev-db/postgresql was removed from the tree five weeks ago. You should upgrade > to postgres-{base,server}. This is probably not possible now if some of the > not reinstalled perl modules are needed for the upgrade. This kind of wedged system is what I moved to Gentoo to get away from. Gentoo is looking more like a much slower Debian every day. One gets the strong impression that "works for me" is the criterion for adding crap like perl-cleaner to the system. A maintenance tool that may be expected to try to upgrade hundreds of packages should be prepared for missing package descriptions and the like. (Reported as bug #333267.) > But perl-cleaner prints the `emerge ...$lotofpackages` command before it fails. > I would take this and remove dev-db/postgresql from it and try it manually. OK. Since the list of packages filled more than 75 lines, it will take a while, and with a flakey ISP I don't want to do it from home. I'll go to the office and run it from console, then get back to you on whether that works or not. (Including checking if the spamassassin upgrade works, which it may not since it was spamc that blocked emerge, not the missing Perl packages.) (In reply to comment #7) > For some reason, I cannot see your improved ebuild attached to this bug. No, and you won't because I don't intend to write it; I don't write ebuilds, and I certainly don't know enough about portage to figure out how to work around this kind of mess. When I started with Gentoo, I just wanted a system that works most of the time, and is simple enough that when it doesn't, a user with a small amount of common sense can intervene to get things going again. Originally I thought the USE flag feature was very cool, and I guess I still do, but except for +doc I only very rarely mess with USE flags or anything else (except for using FEATURES=-test a lot). I do what the error/warning messages tell me to do. In return, I just ask that the system not wedge itself. Gentoo used to be that kind of system. It isn't, any more. > some people would write that your ebuild totally sucks - and that's the truth. Of course they would. But there are two kinds of total suckage. One is the kind displayed here. A rat's nest of interwined hacks that gets wedged on something very simple like a deleted package. The other is when a "simple" error condition that an obvious quick hack would auto-correct is left to the user to resolve. Believe me, I'd choose the latter every time, and happily ignore the posts that declare my work to totally suck. You must have missed the news item when you upgraded perl to run perl-cleaner --all immediately after the upgrade. Not helping matters is your system is not updated if you have the old postgresql. This bug is not for spamassassin, this is a Duplicate of Bug 192319. *** This bug has been marked as a duplicate of bug 192319 *** |