Summary: | dev-perl/File-MimeInfo-0.170.0 - Module::Build version 0.40 required--this is only version 0.3901 at ./Build line 41. | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Prashanth Mundkur <prashanth.mundkur> |
Component: | [OLD] Development | Assignee: | Gentoo Perl team <perl> |
Status: | RESOLVED INVALID | ||
Severity: | normal | CC: | aranea, ihsorihakanekat |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Prashanth Mundkur
2014-02-23 03:30:21 UTC
No, all right dev-perl/File-MimeInfo-0.170.0 already depends on dev-perl/File-BaseDir and File-DesktopEntry. Moreover, we have perl-core/Module-Build-0.400.300 stable. Your log said "...this is only version 0.3901..." Re-opening, since my emerge still *fails* with the exact same error even after a --sync today. The underlying bug could be elsewhere, since: # equery l Module-Build * Searching for Module-Build ... [IP-] [ ] perl-core/Module-Build-0.400.300:0 I'm happy to provide any information you need. If you'd like me to file a different bug on the different package, I'm happy to. But please don't close the bug without the failing emerge being resolved. Did you run `perl-cleaner --all` ? (In reply to Prashanth Mundkur from comment #2) > Re-opening, since my emerge still *fails* with the exact same error even > after a --sync today. The underlying bug could be elsewhere, since: > > # equery l Module-Build > * Searching for Module-Build ... > [IP-] [ ] perl-core/Module-Build-0.400.300:0 > > I'm happy to provide any information you need. If you'd like me to file a > different bug on the different package, I'm happy to. But please don't > close the bug without the failing emerge being resolved. It seems that you have some problems with different (maybe installed by hand) module version loading. Try to execute: perl -MModule::Build -e 'print "$Module::Build::VERSION\n";' It'll tell you version of module that is loaded. If it's not 0.4003 (for 0.400.300 version), you can try to execute: strace -e open perl -MModule::Build -e 'print "$Module::Build::VERSION\n";' 2>&1 | grep Build.pm (you need strace to be installed on your system) It will tell you what file is loaded. For example on amd64 you should have something like this: open("/usr/lib64/perl5/vendor_perl/5.16.3/Module/Build.pm", O_RDONLY) = 4 So it opens .pm file from /usr/lib64/perl5/vendor_perl/5.16.3/Module folder. If you see '/usr/local...' in open syscall, then your problem is definitely hand-installed package and it's nothing portage related here. I got: $ strace -e open perl -MModule::Build -e 'print "$Module::Build::VERSION\n";' 2>&1 | grep Build.pm open("/usr/lib64/perl5/5.16.3/Module/Build.pm", O_RDONLY) = 4 $ perl -MModule::Build -e 'print "$Module::Build::VERSION\n";' 0.3901 But running 'perl-cleaner --all' after that helped, and now the emerge issue has disappeared. Thanks! *** Bug 502998 has been marked as a duplicate of this bug. *** *** Bug 506032 has been marked as a duplicate of this bug. *** I've filed the duplicate (506032) of this bug. I tried perl-cleaner --all, however it doesn't work fine. As I reported bug 506032, dev-perl/File-MimeInfo-0.170.0 fails. perl -MModule::Build -e 'print "$Module::Build::VERSION\n";' responds: 0.3901. strace -e open perl -MModule::Build -e 'print "$Module::Build::VERSION\n";' 2>&1 | grep Build.pm responds: open("/usr/lib/perl5/5.16.3/Module/Build.pm", O_RDONLY|O_LARGEFILE) = 4. Regards, That "open" test is not very useful outside ruling out non-portage managed files, because it only tells you which Module::Build it *does* find, not the one that is installed but not being found. > equery list perl virtual/perl-Module-Build perl-core/Module-Build and > query files perl-core/Module-Build should be consulted to confirm that Module::Build is in fact installed correctly, and that you don't have a "broken" perl-core/Module-Build that was built for an older version of perl and needs to be rebuilt due to perl being upgraded. equery list perl virtual/perl-Module-Build perl-core/Module-Build resopnds: ----- dev-lang/perl-5.16.3 virtual/perl-Module-Build-0.400.300 perl-core/Module-Build-0.400.300 ------ equery files perl-core/Module-Build responds: ----- /usr /usr/bin /usr/bin/config_data-0.400.300-Module-Build-0.400.300 /usr/lib /usr/lib/perl5 /usr/lib/perl5/vendor_perl /usr/lib/perl5/vendor_perl/5.12.4 /usr/lib/perl5/vendor_perl/5.12.4/Module /usr/lib/perl5/vendor_perl/5.12.4/Module/Build /usr/lib/perl5/vendor_perl/5.12.4/Module/Build.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/API.pod /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Authoring.pod /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Base.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Bundling.pod /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Compat.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Config.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/ConfigData.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Cookbook.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Dumper.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/ModuleInfo.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Notes.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/PPMMaker.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/Amiga.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/Default.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/EBCDIC.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/MPEiX.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/MacOS.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/RiscOS.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/Unix.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/VMS.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/VOS.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/Windows.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/aix.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/cygwin.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/darwin.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Platform/os2.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/PodParser.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/Version.pm /usr/lib/perl5/vendor_perl/5.12.4/Module/Build/YAML.pm /usr/lib/perl5/vendor_perl/5.12.4/inc /usr/lib/perl5/vendor_perl/5.12.4/inc/latest /usr/lib/perl5/vendor_perl/5.12.4/inc/latest.pm /usr/lib/perl5/vendor_perl/5.12.4/inc/latest/private.pm /usr/share /usr/share/doc /usr/share/doc/Module-Build-0.400.300 /usr/share/doc/Module-Build-0.400.300/Changes.bz2 /usr/share/doc/Module-Build-0.400.300/README.bz2 /usr/share/man /usr/share/man/man1 /usr/share/man/man1/config_data-0.400.300-Module-Build-0.400.300.1.bz2 20140331_equery.log lines 17-57/57 (END) ----- What should I next? Right, this indicates that perl-core/Module-Build is still in the condition it was when you had perl 5.12. Now you have installed perl-5.16, those files are no longer visible. Which is what happens if you either didn't run perl-cleaner, or perl cleaner for some reason failed. > equery b -n /usr/lib/perl5/vendor_perl/5.12.4/ This will produce a list of packages that portage thinks are installed, but perl doesn't realise are installed, and must be reinstalled "Somehow" for things to work. > emerge -vat1 --keep-going $( equery b -n /usr/lib/perl5/vendor_perl/5.16.0/ | sed 's/ .*//' ) This may help get you started, and is only a fallback to work around the possibility perl-cleaner isn't working for you. Though perl-cleaner *should* work, and should do other things that this approach does not cover. NB: This is really a bug tracker, not a help network, but https://wiki.gentoo.org/wiki/Knowledge_Base:Software_builds_fail_with_perl_module_missing_even_though_it_is_installed is not sufficiently clear for this scenario. I succeeded to update perl modules following the gentoo wiki: https://wiki.gentoo.org/wiki/Knowledge_Base:Software_builds_fail_with_perl_module_missing_even_though_it_is_installed and have successfully emerged File-MimeInfo. However, perl-cleaner doesn't work. I open the new bug about it. |