steps to reproduce: (same with "eselect python set 2") ------------------------------------------------------ linux01 ~ # eselect python list Available Python interpreters: [1] python2.7 * [2] python3.1 linux01 ~ # FEATURES="test ccache" emerge -1v =dev-libs/libxml2-2.7.8 These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] dev-libs/libxml2-2.7.8 USE="icu python readline test -debug -doc -examples -ipv6" 0 kB Total: 1 package (1 reinstall), Size of downloads: 0 kB >>> Verifying ebuild manifests >>> Emerging (1 of 1) dev-libs/libxml2-2.7.8 * libxml2-2.7.8.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * xsts-2002-01-16.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * xsts-2004-01-14.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * Package: dev-libs/libxml2-2.7.8 * Repository: gentoo * Maintainer: gnome@gentoo.org * USE: elibc_glibc icu kernel_linux python readline test userland_GNU x86 * FEATURES: ccache sandbox test userpriv usersandbox * ERROR: dev-libs/libxml2-2.7.8 failed (setup phase): * USE_PYTHON variable does not enable any Python ABI supported by dev-libs/libxml2-2.7.8 * * Call stack: * ebuild.sh, line 56: Called pkg_setup * libxml2-2.7.8.ebuild, line 42: Called python_pkg_setup * python.eclass, line 377: Called _python_calculate_PYTHON_ABIS * python.eclass, line 666: Called die * The specific snippet of code: * die "USE_PYTHON variable does not enable any Python ABI supported by ${CATEGORY}/${PF}" * * If you need support, post the output of 'emerge --info =dev-libs/libxml2-2.7.8', * the complete build log and the output of 'emerge -pqv =dev-libs/libxml2-2.7.8'. * The complete build log is located at '/var/tmp/portage/dev-libs/libxml2-2.7.8/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-libs/libxml2-2.7.8/temp/die.env'. * S: '/var/tmp/portage/dev-libs/libxml2-2.7.8/work/libxml2-2.7.8' >>> Failed to emerge dev-libs/libxml2-2.7.8, Log file: >>> '/var/tmp/portage/dev-libs/libxml2-2.7.8/temp/build.log' ------------------------------------------------------ Can't emerge "media-libs/mesa-7.10.1" without it (blocks mesa), sorry but found libxml2 problem, because of mesa failed build (hope with fix of libxml2, the mesa-problem is "recursive" fixed): gmake[2]: Entering directory `/var/tmp/portage/media-libs/mesa-7.10.1/work/Mesa-7.10.1/src/mesa' python2 -t -O -O main/es_generator.py -S main/APIspec.xml -V GLES1.1 > main/api_exec_es1.c Traceback (most recent call last): File "main/es_generator.py", line 26, in <module> import APIspecutil as apiutil File "/var/tmp/portage/media-libs/mesa-7.10.1/work/Mesa-7.10.1/src/mesa/main/APIspecutil.py", line 28, in <module> import libxml2 ImportError: No module named libxml2 gmake[2]: *** No rule to make target `main/api_exec_es1.c', needed by `depend'. Stop. gmake[2]: Leaving directory `/var/tmp/portage/media-libs/mesa-7.10.1/work/Mesa-7.10.1/src/mesa' make[1]: *** [subdirs] Error 1 make[1]: Leaving directory `/var/tmp/portage/media-libs/mesa-7.10.1/work/Mesa-7.10.1/src' make: *** [default] Error 1 emake failed * ERROR: media-libs/mesa-7.10.1 failed (compile phase): * died running emake, base_src_make * * Call stack: * ebuild.sh, line 56: Called src_compile * environment, line 5698: Called base_src_compile * environment, line 1146: Called base_src_make * environment, line 1184: Called die * The specific snippet of code: * emake "$@" || die "died running emake, $FUNCNAME"; * * If you need support, post the output of 'emerge --info =media-libs/mesa-7.10.1', * the complete build log and the output of 'emerge -pqv =media-libs/mesa-7.10.1'. * The complete build log is located at '/var/tmp/portage/media-libs/mesa-7.10.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/media-libs/mesa-7.10.1/temp/environment'. * S: '/var/tmp/portage/media-libs/mesa-7.10.1/work/Mesa-7.10.1' >>> Failed to emerge media-libs/mesa-7.10.1, Log file: >>> '/var/tmp/portage/media-libs/mesa-7.10.1/temp/build.log'
What is USE_PYTHON set for you to ?
linux01 ~ # grep -irs USE_PYTHON /etc/ /etc/make.conf:#USE_PYTHON="2.7 3.1" /etc/make.conf:USE_PYTHON="3.1" linux01 ~ #
You should set: USE_PYTHON="2.7 3.1" dev-libs/libxml2[python] currently does not support Python 3.
I'm going with your suggestion, created /etc/portage/env/dev-libs/dev-libs/libxml2-2.7.8 with USE_PYTHON="2.7 3.1" in it. Works for me till hopefully an upstream will handle python-3.x. Thanks a lot.
correct: /etc/portage/env/dev-libs/libxml2-2.7.8