Dmitry Bogun wrote: > Hi. > > Perl packages family use extremely annoying dependency definition. > > See example below. > > The question is "what is the correct way to solve this dependency > conflict?". I don't like to add all "conflicts" into install list in cli. > Is there a way to force update of all this "perl sh.t/stuff"? And this is > not first time when I faced this issue. And usually it happen with perl* > packages. > > # emerge -a1 bash perl > > * IMPORTANT: 1 news items need reading for repository 'gentoo'. > * Use eselect news read to view new items. > > > These are the packages that would be merged, in order: > > Calculating dependencies... done! > [ebuild U ] app-shells/bash-4.3_p46-r1 [4.3_p42-r1] > [ebuild R ] dev-lang/perl-5.20.2 > > WARNING: One or more updates/rebuilds have been skipped due to a > dependency conflict: > > dev-lang/perl:0
[snip] Not every application is compatible when an important part of the infrastructure is about to upgrade. Portage devs try to keep the whole tree consistent i.e. in such a case there not only the update of this important component (Perl), but also of all application that were incompatible with the new version. However, you did not update world, but Perl only. In consequence it is not possible for portage to update also any of the incompatible applications. Since these require the old Perl version, you're stuck. Portage cannot fulfill your requirement to update Perl only and keep applications that are known to be incompatible. Try: emerge -uDvta --changed-use --with-bdeps=y world Cheers, Jörg