Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 343661 - dev-python/docutils: distutils for python 3.1 could not be found on hardened
Summary: dev-python/docutils: distutils for python 3.1 could not be found on hardened
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: x86 Linux
: High normal
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-11-01 09:40 UTC by Christian Bayer
Modified: 2010-11-07 18:26 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christian Bayer 2010-11-01 09:40:54 UTC
* Building of dev-python/docutils-0.7 with CPython 3.1...
python3.1 setup.py build -b build-3.1
Error: The "distutils" standard module, which is required for the 
installation of Docutils, could not be found.  You may need to 
install a package called "python-devel" (or similar) on your 
system using your package manager.
 * ERROR: dev-python/docutils-0.7 failed:
 *   Building failed with CPython 3.1 in distutils_building() function

I am having problems building the python 3.1 part of docutils package. Every time I run emerge -uND world, docutils is marked for update and the build fails. This bug seems NOT to be related to http://bugs.gentoo.org/290966 as it is not fixed by running python-updater, neither with python 3.1 set as active version nor with python2.6. Python-updater discovers broken docutils, tries to remerge them and fails with the above. Revdep-rebuild does not help either.

I digged into this and found out that there are no setuptools installed for python3.1 (There are virtually none of my python-packages installed for python3.1):

ls -l /usr/lib/python3.1/site-packages

drwxr-xr-x 3 root root 4096  1. Nov 04:06 git_remote_helpers
-rw-r--r-- 1 root root  271  1. Nov 04:05 git_remote_helpers-0.1.0-py3.1.egg-info
drwxr-xr-x 2 root root 4096  6. Jul 03:21 java_config_2
-rw-r--r-- 1 root root  418  6. Jul 03:21 java_config-2.1.11-py3.1.egg-info
drwxr-xr-x 6 root root 4096 16. Jun 21:55 pygments
-rw-r--r-- 1 root root 1945 16. Jun 21:54 Pygments-1.3.1-py3.1.egg-info
-rw-r--r-- 1 root root  119  7. Aug 04:01 README

Emerging setuptools revealed that it only installs its python2.6 part. Setting python3.1 the active version does not help either:

ikarus site-packages # eselect python set 2
ikarus site-packages # eselect python list
Available Python interpreters:
  [1]   python2.6
  [2]   python3.1 *
ikarus site-packages # . /etc/profile
ikarus site-packages # emerge -v setuptools

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] dev-python/setuptools-0.6-r1  0 kB

Total: 1 package (1 new), Size of downloads: 0 kB


>>> Verifying ebuild manifests

>>> Emerging (1 of 1) dev-python/setuptools-0.6-r1
 * distribute-0.6.tar.gz RMD160 SHA1 SHA256 size ;-) ...                 [ ok ]
 * checking ebuild checksums ;-) ...                                     [ ok ]
 * checking auxfile checksums ;-) ...                                    [ ok ]
 * checking miscfile checksums ;-) ...                                   [ ok ]
 * CPV:  dev-python/setuptools-0.6-r1
 * REPO: gentoo
 * USE:  elibc_glibc kernel_linux userland_GNU x86
>>> Unpacking source...
>>> Unpacking distribute-0.6.tar.gz to /usr/tmp/portage/dev-python/setuptools-0.6-r1/work
>>> Source unpacked in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work
>>> Preparing source in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work/distribute-0.6 ...
 * Applying setuptools-0.6_rc7-noexe.patch ...                                                                                                        [ ok ]
 * Applying distribute-0.6-sandbox.patch ...                                                                                                          [ ok ]
 * Applying distribute-0.6-provide_setuptools.patch ...                                                                                               [ ok ]
>>> Source prepared.
>>> Configuring source in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work/distribute-0.6 ...
>>> Source configured.
>>> Compiling source in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work/distribute-0.6 ...
 * Building of dev-python/setuptools-0.6-r1 with CPython 2.6...
python2.6 setup.py build -b build-2.6
[...]

no setuptools for 3.1 are build/installed.


This is quite annoying, since no update is going to be finished as everytime docutils fails to build. It persists for at least two months now, oldest entry in summary.log:
summary.log.9.gz:>>> Messages generated by process 7913 on 2010-08-26 03:29:41 CEST for package dev-python/docutils-0.7:
summary.log.9.gz:ERROR: dev-python/docutils-0.7 failed:
summary.log.9.gz:If you need support, post the output of 'emerge --info =dev-python/docutils-0.7',

I think this is since python3.1 was marked stable on hardened.

Docutils package detects python3.1 and tries to build itself against it, but as there are no setuptools installed, this is going to fail.

reproducible: always


emerge --info =dev-python/docutils-0.7
Portage 2.1.8.3 (hardened/linux/x86/10.0, gcc-4.3.4-hardenednopie, glibc-2.11.2-r2, 2.6.32-hardened-r9 i686)
=================================================================
                         System Settings
=================================================================
System uname: Linux-2.6.32-hardened-r9-i686-AMD_Athlon-tm-_Processor-with-gentoo-1.12.13
Timestamp of tree: Mon, 01 Nov 2010 01:45:02 +0000
distcc 3.1 i686-pc-linux-gnu [disabled]
ccache version 2.4 [disabled]
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11
dev-lang/python:     2.6.5-r3, 3.1.2-r4
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    2.3-r1
sys-devel/autoconf:  2.65-r1
sys-devel/automake:  1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       3.4.6-r2, 4.3.4, 4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe -m32 -mtune=i686 -mmmx"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=i686 -pipe -m32 -mtune=i686 -mmmx"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo "
LANG="de_DE.UTF-8"
LDFLAGS="-z combreloc"
LINGUAS="de"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/webapps-experimental"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="acl bash-completion berkdb bzip2 cli cracklib crypt cups cxx dri gdbm gpm hardened iconv modules mudflap ncurses nls nptl nptlonly openmp pam pcre perl pic pppd python readline session ssl sysfs tcpd unicode urandom x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 
        emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m       maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias cgi " COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i740 intel     mach64 mga neomagic nsc nv r128 radeon rendition s3 s3virge savage      siliconmotion sis sisusb tdfx tga trident tseng v4l vesa via vmware 
        voodoo" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2010-11-01 20:23:12 UTC
Try:
emerge -1 python:2.6 python:3.1
emerge -1 setuptools
Comment 2 Christian Bayer 2010-11-02 10:18:03 UTC
>>> Emerging (1 of 1) dev-python/setuptools-0.6-r1
 * distribute-0.6.tar.gz RMD160 SHA1 SHA256 size ;-) ...                 [ ok ]
 * checking ebuild checksums ;-) ...                                     [ ok ]
 * checking auxfile checksums ;-) ...                                    [ ok ]
 * checking miscfile checksums ;-) ...                                   [ ok ]
 * CPV:  dev-python/setuptools-0.6-r1
 * REPO: gentoo
 * USE:  elibc_glibc kernel_linux userland_GNU x86
>>> Unpacking source...
>>> Unpacking distribute-0.6.tar.gz to /usr/tmp/portage/dev-python/setuptools-0.6-r1/work
>>> Source unpacked in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work
>>> Preparing source in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work/distribute-0.6 ...
 * Applying setuptools-0.6_rc7-noexe.patch ...                                                                                               [ ok ]
 * Applying distribute-0.6-sandbox.patch ...                                                                                                 [ ok ]
 * Applying distribute-0.6-provide_setuptools.patch ...                                                                                      [ ok ]
>>> Source prepared.
>>> Configuring source in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work/distribute-0.6 ...
>>> Source configured.
>>> Compiling source in /usr/tmp/portage/dev-python/setuptools-0.6-r1/work/distribute-0.6 ...
 * Building of dev-python/setuptools-0.6-r1 with CPython 2.6...
python2.6 setup.py build -b build-2.6
[..]

Does not install its python3.1 part either.

I even unmerged setuptools entirely and emerged them again but no avail.


uhm... dev-python/setuptools-0.6-r1 has this in the ebuild file:
RESTRICT_PYTHON_ABIS="3.*"

Could it be that this prevents python3.1 part from being built?

update: unmasked dev-python/setuptools-0.6.14 which is marked stable on my x86_64 desktop. This ebuild correctly installs its python3.1 part, so dev-python/docutils-0.7 emerges fine.

Perhaps at least setuptools-0.6.4 which does not restrict Python ABIs and probably builts its python3.1 parts should be unmasked on hardened systems?
I looked into the ebuild, x86 is not masked so it must be hardened masking > dev-python/setuptools-0.6-r1.
I did not unmask python3.1 myself, so to have a consistent python environment the corresponding setuptools for it should be available.
Comment 3 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2010-11-07 18:26:20 UTC
No version of dev-python/setuptools is masked in any profile.