1 |
Dmitry Bogun wrote: |
2 |
|
3 |
> Hi. |
4 |
> |
5 |
> Perl packages family use extremely annoying dependency definition. |
6 |
> |
7 |
> See example below. |
8 |
> |
9 |
> The question is "what is the correct way to solve this dependency |
10 |
> conflict?". I don't like to add all "conflicts" into install list in cli. |
11 |
> Is there a way to force update of all this "perl sh.t/stuff"? And this is |
12 |
> not first time when I faced this issue. And usually it happen with perl* |
13 |
> packages. |
14 |
> |
15 |
> # emerge -a1 bash perl |
16 |
> |
17 |
> * IMPORTANT: 1 news items need reading for repository 'gentoo'. |
18 |
> * Use eselect news read to view new items. |
19 |
> |
20 |
> |
21 |
> These are the packages that would be merged, in order: |
22 |
> |
23 |
> Calculating dependencies... done! |
24 |
> [ebuild U ] app-shells/bash-4.3_p46-r1 [4.3_p42-r1] |
25 |
> [ebuild R ] dev-lang/perl-5.20.2 |
26 |
> |
27 |
> WARNING: One or more updates/rebuilds have been skipped due to a |
28 |
> dependency conflict: |
29 |
> |
30 |
> dev-lang/perl:0 |
31 |
|
32 |
[snip] |
33 |
|
34 |
Not every application is compatible when an important part of the |
35 |
infrastructure is about to upgrade. Portage devs try to keep the whole tree |
36 |
consistent i.e. in such a case there not only the update of this important |
37 |
component (Perl), but also of all application that were incompatible with |
38 |
the new version. |
39 |
|
40 |
However, you did not update world, but Perl only. In consequence it is not |
41 |
possible for portage to update also any of the incompatible applications. |
42 |
Since these require the old Perl version, you're stuck. Portage cannot |
43 |
fulfill your requirement to update Perl only and keep applications that are |
44 |
known to be incompatible. |
45 |
|
46 |
Try: emerge -uDvta --changed-use --with-bdeps=y world |
47 |
|
48 |
Cheers, |
49 |
Jörg |