1 |
On 13/04/2015 03:07, »Q« wrote: |
2 |
> On Sun, 12 Apr 2015 21:35:07 +0300 |
3 |
> Matti Nykyri <matti.nykyri@×××.fi> wrote: |
4 |
> |
5 |
>>> On Apr 12, 2015, at 20:23, »Q« <boxcars@×××.net> wrote: |
6 |
>>> |
7 |
>>> On Sun, 12 Apr 2015 11:12:38 +0200 |
8 |
>>> "J. Roeleveld" <joost@××××××××.org> wrote: |
9 |
>>> |
10 |
>>>> On Saturday, April 11, 2015 08:42:20 PM Alan Grimes wrote: |
11 |
>>> |
12 |
>>>>> PYTHON_TARGETS="${PYTHON_TARGETS} python2_7 python3_4" |
13 |
>>>>> PYTHON_SINGLE_TARGET="python2_7" |
14 |
>>>> |
15 |
>>>> These are set in your profile, please do not override this. |
16 |
>>>> In other words, please remove these 2 lines. |
17 |
>>> |
18 |
>>> I'm not the OP. (I spend less time than him on maintaining my |
19 |
>>> system.) |
20 |
>>> |
21 |
>>> Should those variables really not be set in make.conf? I added |
22 |
>>> them to make.conf some time back because portage complained about |
23 |
>>> them, and if I comment them out, it complains again, like so: |
24 |
> |
25 |
>>> The following REQUIRED_USE flag constraints are unsatisfied: |
26 |
>>> python? ( exactly-one-of ( python_single_target_python3_3 |
27 |
>>> python_single_target_python3_4 python_single_target_python2_7 ) ) |
28 |
> |
29 |
> [snip] |
30 |
> |
31 |
>> This is because you have set the "python" use flag in your make.conf |
32 |
>> (or package.use). |
33 |
>> |
34 |
>> Remove the python useflag and the problem goes away. It is not set by |
35 |
>> the profile but by you. Do you really need it? |
36 |
> |
37 |
> I enabled it globally (in make.conf), but I think I only need it for one |
38 |
> or two packages. If I remove it from USE, I get portage complaining |
39 |
> about other things. |
40 |
> |
41 |
> |
42 |
|
43 |
|
44 |
USE="python" is one of those flags that has no accurate meaning in real |
45 |
life, and the user needs to make an informed decision. It doesn't work |
46 |
like USE="sse" for example, which means packages that can use the sse |
47 |
instruction set will compile for it. It's a fairly exact meaning. |
48 |
|
49 |
USE="python" means "use python to do stuff" but stuff is not defined and |
50 |
it's usually hard to find out what it is for a given package. For some |
51 |
it means to build optional extra tools that run under python, for some |
52 |
it means to create python language bindings, and for others it could |
53 |
even mean some critical system function that is implemented in python |
54 |
and eats your kittens if not enabled. (sort of like how portage is |
55 |
implemented in python; there's no USE for it but you get the idea). |
56 |
|
57 |
Usually, USE="python" should be set per-package if you need what it |
58 |
does. I had it in make.conf myself in my early days and kept getting |
59 |
into circular dependencies. Sorting that out took some effort. |
60 |
|
61 |
Portage will almost certainly complain if you take something with |
62 |
far-reaching effects as USE="python" in make.conf and remove it. |
63 |
|
64 |
So, take each thing it is complaining about and enable or disable it |
65 |
based on what you need. Tweak as necessary to get the result you want. |
66 |
|
67 |
|
68 |
-- |
69 |
Alan McKinnon |
70 |
alan.mckinnon@×××××.com |