1 |
On Sunday 16 May 2010 15:10:16 Simon wrote: |
2 |
> Hi, |
3 |
> |
4 |
> Please help me to get rid of this error while emerging portage: |
5 |
> # emerge portage |
6 |
|
7 |
[snip] |
8 |
|
9 |
Yea gods, the youth of today. In my day, when I was a little whipper-snapper, |
10 |
we actually read the ebuild. Why because? Because there was no-one else around |
11 |
to do our looking by proxy for us! |
12 |
|
13 |
So, in the interest of decomming the proxy in my head, herewith the magic |
14 |
incantations to make your problem go "Poof!" and disappear: |
15 |
|
16 |
Firstly, you have tools to help. equery, euse, and many more. Learn how to use |
17 |
them, and use them. |
18 |
|
19 |
Secondly, read the ebuild. portage does what the ebuild says so the master |
20 |
reference to figure out why portage wants to do something is in the ebuild (or |
21 |
eclasses that it inherits). |
22 |
|
23 |
> * "bsddb" module is out-of-date and no longer maintained inside |
24 |
> dev-lang/python. It has |
25 |
> * been additionally removed in Python 3. You should use external, |
26 |
> still maintained "bsddb3" |
27 |
> * module provided by dev-python/bsddb3 which supports both Python 2 |
28 |
> and Python 3. |
29 |
> * |
30 |
> * ERROR: dev-lang/python-2.5.4-r4 failed. |
31 |
> * Call stack: |
32 |
> * ebuild.sh, line 49: Called pkg_setup |
33 |
> * python-2.5.4-r4.ebuild, line 64: Called built_with_use |
34 |
> 'pkg_setup' 'pkg_setup' |
35 |
> * eutils.eclass, line 1862: Called die |
36 |
> * The specific snippet of code: |
37 |
> * die) die "$PKG does not |
38 |
> actually support the $1 USE flag!";; |
39 |
> * The die message: |
40 |
> * sys-devel/gcc-4.1.2 does not actually support the libffi USE flag! |
41 |
|
42 |
From the ebuild: |
43 |
pkg_setup() { |
44 |
if use berkdb; then |
45 |
ewarn "\"bsddb\" module is out-of-date and no longer |
46 |
maintained inside dev-lang/python. It has" |
47 |
ewarn "been additionally removed in Python 3. You should use |
48 |
external, still maintained \"bsddb3\"" |
49 |
ewarn "module provided by dev-python/bsddb3 which supports |
50 |
both Python 2 and Python 3." |
51 |
fi |
52 |
|
53 |
if built_with_use sys-devel/gcc libffi; then |
54 |
die "Reinstall sys-devel/gcc with \"libffi\" USE flag |
55 |
disabled" |
56 |
fi |
57 |
} |
58 |
|
59 |
|
60 |
So, to get rid of the bsddb ewarn, you need to remove that "berkdb" from USE. |
61 |
|
62 |
And the build failure is staring you right there in the face. As we say here |
63 |
at the tip of Africa, "As dit 'n slang was, het dit jou gepik" [If it were a |
64 |
snake, it would have already bitten you]. |
65 |
|
66 |
|
67 |
You have "USE=libffi" which doesn't work. Remove it, sync the tree, rebuild |
68 |
world. (your portage and gcc versions have updates available, even on stable) |
69 |
|
70 |
|
71 |
|
72 |
-- |
73 |
alan dot mckinnon at gmail dot com |