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



Reply via email to