On Sunday 16 May 2010 15:10:16 Simon wrote:
> Hi,
> 
> Please help me to get rid of this error while emerging portage:
> # emerge portage

[snip]

Yea gods, the youth of today. In my day, when I was a little whipper-snapper, 
we actually read the ebuild. Why because? Because there was no-one else around 
to do our looking by proxy for us!

So, in the interest of decomming the proxy in my head, herewith the magic 
incantations to make your problem go "Poof!" and disappear:

Firstly, you have tools to help. equery, euse, and many more. Learn how to use 
them, and use them.

Secondly, read the ebuild. portage does what the ebuild says so the master 
reference to figure out why portage wants to do something is in the ebuild (or 
eclasses that it inherits).

>   * "bsddb" module is out-of-date and no longer maintained inside
> dev-lang/python. It has
>   * been additionally removed in Python 3. You should use external,
> still maintained "bsddb3"
>   * module provided by dev-python/bsddb3 which supports both Python 2
> and Python 3.
>   *
>   * ERROR: dev-lang/python-2.5.4-r4 failed.
>   * Call stack:
>   *                ebuild.sh, line   49:  Called pkg_setup
>   *   python-2.5.4-r4.ebuild, line   64:  Called built_with_use
> 'pkg_setup' 'pkg_setup'
>   *            eutils.eclass, line 1862:  Called die
>   * The specific snippet of code:
>   *                                      die)   die "$PKG does not
> actually support the $1 USE flag!";;
>   *  The die message:
>   *   sys-devel/gcc-4.1.2 does not actually support the libffi USE flag!

From the ebuild:
pkg_setup() {
        if use berkdb; then
                ewarn "\"bsddb\" module is out-of-date and no longer 
maintained inside dev-lang/python. It has"
                ewarn "been additionally removed in Python 3. You should use 
external, still maintained \"bsddb3\""
                ewarn "module provided by dev-python/bsddb3 which supports 
both Python 2 and Python 3."
        fi

        if built_with_use sys-devel/gcc libffi; then
                die "Reinstall sys-devel/gcc with \"libffi\" USE flag 
disabled"
        fi
}


So, to get rid of the bsddb ewarn, you need to remove that "berkdb" from USE.

And the build failure is staring you right there in the face. As we say here 
at the tip of Africa, "As dit 'n slang was, het dit jou gepik" [If it were a 
snake, it would have already bitten you].


You have "USE=libffi" which doesn't work. Remove it, sync the tree, rebuild 
world. (your portage and gcc versions have updates available, even on stable)



-- 
alan dot mckinnon at gmail dot com

Reply via email to