Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 289067

Summary: Some packages fail to build with >=dev-lang/python-2.6.3 and older versions of dev-python/setuptools
Product: Gentoo Linux Reporter: Almad <bugs>
Component: Current packagesAssignee: Python Gentoo Team <python>
Status: VERIFIED WORKSFORME    
Severity: normal CC: djc, dschridde+gentoobugs, klausman, Manfred.Knick, python, rcorsaro
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Almad 2009-10-14 16:20:02 UTC
>>> Starting src_compile                                                           
 * Building of dev-python/jinja2-2.2.1 with Python 2.6...                          
python2.6 setup.py --with-speedups build -b build-2.6                              
running build                                                                      
running build_py                                                                   
creating build-2.6                                                                 
creating build-2.6/lib.linux-x86_64-2.6                                            
creating build-2.6/lib.linux-x86_64-2.6/jinja2                                     
copying jinja2/parser.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                  
copying jinja2/sandbox.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                 
copying jinja2/defaults.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                
copying jinja2/compiler.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                
copying jinja2/exceptions.py -> build-2.6/lib.linux-x86_64-2.6/jinja2              
copying jinja2/optimizer.py -> build-2.6/lib.linux-x86_64-2.6/jinja2               
copying jinja2/tests.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                   
copying jinja2/meta.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                    
copying jinja2/debug.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                   
copying jinja2/ext.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                     
copying jinja2/visitor.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                 
copying jinja2/constants.py -> build-2.6/lib.linux-x86_64-2.6/jinja2               
copying jinja2/lexer.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                   
copying jinja2/_stringdefs.py -> build-2.6/lib.linux-x86_64-2.6/jinja2             
copying jinja2/filters.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                 
copying jinja2/loaders.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                 
copying jinja2/environment.py -> build-2.6/lib.linux-x86_64-2.6/jinja2             
copying jinja2/runtime.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                 
copying jinja2/__init__.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                
copying jinja2/_ipysupport.py -> build-2.6/lib.linux-x86_64-2.6/jinja2             
copying jinja2/nodes.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                   
copying jinja2/bccache.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                 
copying jinja2/utils.py -> build-2.6/lib.linux-x86_64-2.6/jinja2                   
running build_ext                                                                  
Traceback (most recent call last):                                                 
  File "setup.py", line 86, in <module>
    """
  File "/usr/lib64/python2.6/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/usr/lib64/python2.6/distutils/dist.py", line 975, in run_commands
    self.run_command(cmd)
  File "/usr/lib64/python2.6/distutils/dist.py", line 995, in run_command
    cmd_obj.run()
  File "/usr/lib64/python2.6/distutils/command/build.py", line 134, in run
    self.run_command(cmd_name)
  File "/usr/lib64/python2.6/distutils/cmd.py", line 333, in run_command
    self.distribution.run_command(command)
  File "/usr/lib64/python2.6/distutils/dist.py", line 995, in run_command
    cmd_obj.run()
  File "/usr/lib64/python2.6/site-packages/setuptools/command/build_ext.py", line 46, in run
    _build_ext.run(self)
  File "/usr/lib64/python2.6/distutils/command/build_ext.py", line 340, in run
    self.build_extensions()
  File "/usr/lib64/python2.6/site-packages/Pyrex/Distutils/build_ext.py", line 82, in build_extensions
    self.build_extension(ext)
  File "/usr/lib64/python2.6/site-packages/setuptools/command/build_ext.py", line 175, in build_extension
    _build_ext.build_extension(self,ext)
  File "/usr/lib64/python2.6/distutils/command/build_ext.py", line 460, in build_extension
    ext_path = self.get_ext_fullpath(ext.name)
  File "/usr/lib64/python2.6/distutils/command/build_ext.py", line 633, in get_ext_fullpath
    filename = self.get_ext_filename(modpath[-1])
  File "/usr/lib64/python2.6/site-packages/setuptools/command/build_ext.py", line 85, in get_ext_filename
    ext = self.ext_map[fullname]
KeyError: '_speedups'

!!! ERROR in dev-python/jinja2-2.2.1::gentoo:
!!! In python_execute_function at line 4242
!!! Building failed with Python 2.6 in building() function

!!! Call stack:
!!!    * python_execute_function (/var/tmp/paludis/dev-python-jinja2-2.2.1/temp/loadsaveenv:4242)
!!!    * distutils_src_compile (/var/tmp/paludis/dev-python-jinja2-2.2.1/temp/loadsaveenv:1169)
!!!    * src_compile (/var/tmp/paludis/dev-python-jinja2-2.2.1/temp/loadsaveenv:4574)
!!!    * ebuild_f_compile (/usr/libexec/paludis/2/src_compile.bash:56)
!!!    * ebuild_main (/usr/libexec/paludis/ebuild.bash:598)
!!!    * main (/usr/libexec/paludis/ebuild.bash:626)

diefunc: making ebuild PID 23523 exit with error
die trap: exiting with error.

Install error:
  * In program paludis django -i:
  * When performing install action from command line:
  * When executing install task:
  * When installing 'dev-python/jinja2-2.2.1:0::gentoo':
  * When running an ebuild command on 'dev-python/jinja2-2.2.1:0::gentoo':
  * Install error: Install failed for 'dev-python/jinja2-2.2.1:0::gentoo'
Comment 1 Manfred Knick 2009-10-20 16:07:07 UTC
This is probably due to http://bugs.python.org/issue7064
That issue is already noticed upsream and shall proposedly be healed by python
upgrade from version 2.6.3 to version 2.6.4.

###

Cross-Reference:
A similar problem exists with net-analyzer/net-snmp-5.4.2.1-r1;
please c.f. Bug #289882
Comment 2 Dirkjan Ochtman (RETIRED) gentoo-dev 2009-10-20 17:06:06 UTC
Are you using 2.6.3? You should probably post your emerge --info, though we'll probably just put 2.6.4 in the tree to fix this, instead of working around it locally.
Comment 3 Wormo (RETIRED) gentoo-dev 2009-10-21 05:10:34 UTC
Please do post your 'emerge --info', which settles questions such as exact python version.
Comment 4 Manfred Knick 2009-10-21 08:47:20 UTC
$ emerge --info
Portage 2.1.6.13 (default/linux/amd64/2008.0/desktop, gcc-4.4.2, glibc-2.9_p20081201-r3, 2.6.31-gentoo-r3 x86_64)
=================================================================
System uname: Linux-2.6.31-gentoo-r3-x86_64-AMD_Phenom-tm-_9950_Quad-Core_Processor-with-gentoo-1.12.12
Timestamp of tree: Wed, 21 Oct 2009 08:15:02 +0000
app-shells/bash:     4.0_p28
dev-java/java-config: 2.1.8-r1
dev-lang/python:     2.6.3, 3.1.1-r1
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 1.12.12
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.4_p6, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native        -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib64/fax /usr/share/config /var/lib/hsqldb /var/spool/fax/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /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 /etc/udev/rules.d"
CXXFLAGS="-march=native        -O2 -pipe"
DISTDIR="/mnt/Storage-01/Portage_dist/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://de-mirror.org/distro/gentoo/"
LANG="de_DE.UTF8"
LC_ALL="de_DE.UTF8"
LDFLAGS="-Wl,-O1"
LINGUAS="de"
MAKEOPTS="-j5"
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="/mnt/Storage-02/Portage_tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/local-overlay"
SYNC="rsync://linux.rz.ruhr-uni-bochum.de/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 apache2 bash-completion berkdb branding bzip2 cairo cdr cli consolekit cracklib crypt cups dbus dga doc dri dts dvb dvd dvdr eds emboss encode esd evo examples fam fax ffmpeg firefox firefox3 flac foomaticdb fortran gdbm gif gimp gnome gphoto2 gpm gstreamer gtk h323 hal hbci htmlhandbook iconv ipv6 isdnlog jadetex java jce jpeg kde ldap libnotify lm_sensors mad maildir mbox mikmod mmx mng modules mp3 mp4 mpeg mudflap multilib mysql ncurses nls nptl nptlonly nsplugin nvidia ogg opengl openmp pam pcre pdf perl pmu png ppds pppd python qt3 qt3support qt4 quicktime readline reflection samba sasl scanner sdl session sip snmp spell spl sql sse sse2 sse3 sse4a ssl startup-notification subversion svg sysfs tcpd theora thunar tiff truetype unicode usb v4l v4l2 vorbis webkit x264 xcomposite xml xorg xulrunner xv xvid zlib zvbi" ALSA_CARDS="hda-intel" 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 authn_alias authn_anon 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 deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" FRITZCAPI_CARDS="fcpci" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" MISDN_CARDS="avmfritz" SANE_BACKENDS="hp" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 5 Manfred Knick 2009-10-21 08:51:38 UTC
(In reply to comment #2)
> Are you using 2.6.3?
Unfortunately, quite a bunch of packages still rely on this as DEP.

> probably just put 2.6.4 in the tree to fix this, instead of working around it
> locally.
YES, please - that's exactly what I tried to suggest ;) in my original Comment #1.

Comment 6 Dirkjan Ochtman (RETIRED) gentoo-dev 2009-10-21 09:35:20 UTC
Huh, do we have stuff depending on 2.6.3 specifically?
Comment 7 Manfred Knick 2009-10-21 12:43:19 UTC
(In reply to comment #6)
> Huh, do we have stuff depending on 2.6.3 specifically?
> 
If you have emerged 3.x, you should have seen the following
 *
 * WARNING!
 * Many Python modules haven't been ported yet to Python 3.*.
 * Python 3 hasn't been activated and Python wrapper is still configured to use Python 2.
 * You can manually activate Python 3.1 using `eselect python set python3.1`.
 * It is recommended to currently have Python wrapper configured to use Python 2.
 * Having Python wrapper configured to use Python 3 is unsupported.
 *
Comment 8 Manfred Knick 2009-10-23 08:49:18 UTC
(Addendum to comment #5)

"Python 2.6.4rc2
Python 2.6.4 is a critical bug fix for Python 2.6.3, which had regressions in the logging package and in setuptools compatibility. Python 2.6.4rc2 was released on 18-Oct-2009."
http://www.python.org/download/releases/2.6.4/

Nice explanation in:
http://mail.python.org/pipermail/python-dev/2009-October/093007.html

Seems we can expect 2.6.4 next Sunday.
Comment 9 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-23 15:18:15 UTC
Post the output of:
emerge -ptv dev-python/setuptools
Comment 10 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-23 15:19:06 UTC
*** Bug 289882 has been marked as a duplicate of this bug. ***
Comment 11 Manfred Knick 2009-10-24 06:30:24 UTC
(In reply to comment #9)

> Post the output of:

$ emerge -ptv dev-python/setuptools
[ebuild   R   ] dev-python/setuptools-0.6-r1  0 kB

# equery list -p dev-python/setuptools

[I--] [  ] dev-python/setuptools-0.6-r1 (0)

[-P-] [M~] dev-python/setuptools-0.6_rc9-r1 (0)
[-P-] [M~] dev-python/setuptools-0.6.3-r3 (0)
[-P-] [M~] dev-python/setuptools-0.6.4 (0)
[-P-] [M~] dev-python/setuptools-0.6.6 (0)


$ equery list -p dev-lang/python

[I--] [ ~] dev-lang/python-2.6.3 (2.6)

[I--] [ ~] dev-lang/python-3.1.1-r1 (3.1)

[-P-] [  ] dev-lang/python-2.4.6 (2.4)
[-P-] [  ] dev-lang/python-2.5.4-r3 (2.5)
[-P-] [  ] dev-lang/python-2.6.2-r1 (2.6)
[-P-] [ ~] dev-lang/python-2.6.2-r2 (2.6)
Comment 12 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-24 12:51:46 UTC
Please try with dev-python/setuptools-0.6.4 or dev-python/setuptools-0.6.6.
Comment 13 Manfred Knick 2009-10-25 06:22:10 UTC
(In reply to comment #12)
> Please try with dev-python/setuptools-0.6.4 or dev-python/setuptools-0.6.6.

It's my pleasure:

# grep python portage/package.keywords/10_system

  <=dev-python/setuptools-0.6.99                        ~amd64    <-----
  <=dev-lang/python-3.1.99-r99                          ~amd64
  <=dev-python/python-docs-3.1.99-r99                   ~amd64
  <=dev-python/jinja2-2.2.99-r1                         ~amd64

Now, both
        net-analyzer/net-snmp
          dev-python/jinja2
emerge again:

[I--] [ ~] net-analyzer/net-snmp-5.4.2.1-r2 (0)

[I--] [  ] dev-python/jinja2-2.2.1 (0)

. . . . . . . . . . Thanks a lot!

(Perhaps we do have to pay a bit of attention
with python-2.6.4 - expected to be released today - again.)
Comment 14 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-25 10:42:51 UTC
(In reply to comment #13)
> Now, both
>         net-analyzer/net-snmp
>           dev-python/jinja2
> emerge again:

OK. I'm closing this bug.
Comment 15 Manfred Knick 2009-10-29 10:39:29 UTC
(In reply to comment #14)

POSTSCRIPTUM:

Bug #290731 : dev-lang/python-2.6.4 released

http://python.org/download/releases/2.6.4/
Comment 16 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-30 10:56:20 UTC
This bug concerns only older versions of dev-python/setuptools. It's unsupported to mix using of the newest version of one package with an older version of another package.
Comment 17 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-30 10:56:46 UTC
*** Bug 289413 has been marked as a duplicate of this bug. ***
Comment 18 Manfred Knick 2009-10-30 11:14:45 UTC
(In reply to comment #16)

> ... It's
> unsupported to mix using of the newest version of one package with an older
> version of another package.

In this special case, I agree.

But: Stated in this over-all-generality, I defenitely disagree !
Actually, that 'freedom of choice' is what Gentoo is about.

. >>> IFF uncompatibilities exist, they should be reflected in the 
. >>> dependency declarations in the corresponding ebuilds.

In this case,
. . . dev-lang/python-2.6.3  ebuild
is missing a DEP like
. . . >dev-python/setuptools-0.6.6 

That would have saved a lot of time ...

Yours respectfully
Manfred
Comment 19 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-30 11:46:50 UTC
(In reply to comment #18)
> In this case,
> . . . dev-lang/python-2.6.3  ebuild
> is missing a DEP like
> . . . >dev-python/setuptools-0.6.6 

dev-python/setuptools already depens on python, so your suggestion would introduce circular dependency.
Comment 20 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-30 11:47:17 UTC
(In reply to comment #19)
> dev-python/setuptools already depens on python, so your suggestion would
> introduce circular dependency.

s/depens/depends/
Comment 21 Manfred Knick 2009-10-30 11:58:34 UTC
(In reply to comment #19)

> introduce circular dependency

My apologies if my wording

<cite>   "... like ..."   </cite>   in my comment #18

has not stated that clearly enough.
Comment 22 Manfred Knick 2009-10-30 12:25:54 UTC
<cite>

"Blockers
...
This means that you should add the blockers to whichever ebuild is the newest (even if it means that logically it would seem backwards). ..."

</cite> from http://devmanual.gentoo.org/general-concepts/dependencies/index.html

Could that be of help ?
Comment 23 Dennis Schridde 2009-10-31 14:57:12 UTC
I also think that dev-lang/python-2.6.3 should block <dev-python/setuptools-0.6.XXX.
Comment 24 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-10-31 15:09:38 UTC
(In reply to comment #23)

Dependencies won't be changed.
Comment 25 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-11-08 17:26:17 UTC
*** Bug 292397 has been marked as a duplicate of this bug. ***