Public bug reported:

Binary package hint: python2.6

This problem is new since python2.6 2.6.2-0ubuntu2 was uploaded to Karmic.
As part of my project, we regularly run python setup.py build for a few zope 
modules, including some such as zope.proxy that include C extensions. very 
recently, this started failing under python 2.6. It still works fine under 
python2.5. I believe this is a regression that was introduced when the new 
version of python2.6 was uploaded in order to fix 
https://bugs.edge.launchpad.net/ubuntu/+source/python2.6/+bug/392355

I don't know enough about setuptools internals (yet) to submit a patch,
but I can point to exactly what is going wrong:

Here is a terminal session that shows me grabbing the source for
zope.proxy, running setup.py build, and printing some variables from the
python debugger to explain the traceback that happens:

emur...@detox:~$ bzr get lp:zope.proxy
Branched 28 revision(s).                                                        
                              
emur...@detox:~$ cd zope.proxy/
emur...@detox:~/zope.proxy$ python setup.py build
running build
running build_py
creating build
creating build/lib.linux-i686-2.6
creating build/lib.linux-i686-2.6/zope
copying src/zope/__init__.py -> build/lib.linux-i686-2.6/zope
creating build/lib.linux-i686-2.6/zope/proxy
copying src/zope/proxy/__init__.py -> build/lib.linux-i686-2.6/zope/proxy
copying src/zope/proxy/decorator.py -> build/lib.linux-i686-2.6/zope/proxy
copying src/zope/proxy/interfaces.py -> build/lib.linux-i686-2.6/zope/proxy
running egg_info
creating src/zope.proxy.egg-info
writing requirements to src/zope.proxy.egg-info/requires.txt
writing src/zope.proxy.egg-info/PKG-INFO
writing namespace_packages to src/zope.proxy.egg-info/namespace_packages.txt
writing top-level names to src/zope.proxy.egg-info/top_level.txt
writing dependency_links to src/zope.proxy.egg-info/dependency_links.txt
writing manifest file 'src/zope.proxy.egg-info/SOURCES.txt'
> /usr/lib/python2.6/dist-packages/setuptools/command/build_ext.py(85)get_ext_filename()
-> filename = _build_ext.get_ext_filename(self,fullname)
(Pdb) c
reading manifest file 'src/zope.proxy.egg-info/SOURCES.txt'
writing manifest file 'src/zope.proxy.egg-info/SOURCES.txt'
copying src/zope/proxy/_zope_proxy_proxy.c -> 
build/lib.linux-i686-2.6/zope/proxy
running build_ext
> /usr/lib/python2.6/dist-packages/setuptools/command/build_ext.py(85)get_ext_filename()
-> filename = _build_ext.get_ext_filename(self,fullname)
(Pdb) n
> /usr/lib/python2.6/dist-packages/setuptools/command/build_ext.py(86)get_ext_filename()
-> ext = self.ext_map[fullname]
(Pdb) p filename
'_zope_proxy_proxy.so'
(Pdb) pp self.ext_map
{'zope.proxy._zope_proxy_proxy': <setuptools.extension.Extension instance at 
0xa038aec>}
(Pdb) p fullname
'_zope_proxy_proxy'
(Pdb) c
Traceback (most recent call last):
  File "setup.py", line 72, in <module>
    zip_safe = False,
  File "/usr/lib/python2.6/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/usr/lib/python2.6/distutils/dist.py", line 975, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.6/distutils/dist.py", line 995, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.6/distutils/command/build.py", line 135, in run
    self.run_command(cmd_name)
  File "/usr/lib/python2.6/distutils/cmd.py", line 333, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python2.6/distutils/dist.py", line 995, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.6/dist-packages/setuptools/command/build_ext.py", line 
46, in run
    _build_ext.run(self)
  File "/usr/lib/python2.6/distutils/command/build_ext.py", line 340, in run
    self.build_extensions()
  File "/usr/lib/python2.6/dist-packages/Pyrex/Distutils/build_ext.py", line 
82, in build_extensions
    self.build_extension(ext)
  File "/usr/lib/python2.6/dist-packages/setuptools/command/build_ext.py", line 
176, in build_extension
    _build_ext.build_extension(self,ext)
  File "/usr/lib/python2.6/distutils/command/build_ext.py", line 460, in 
build_extension
    ext_path = self.get_ext_fullpath(ext.name)
  File "/usr/lib/python2.6/distutils/command/build_ext.py", line 633, in 
get_ext_fullpath
    filename = self.get_ext_filename(modpath[-1])
  File "/usr/lib/python2.6/dist-packages/setuptools/command/build_ext.py", line 
86, in get_ext_filename
    ext = self.ext_map[fullname]
KeyError: '_zope_proxy_proxy'
emur...@detox:~/zope.proxy$

ProblemType: Bug
Architecture: i386
Date: Fri Sep 11 13:03:47 2009
DistroRelease: Ubuntu 9.10
Package: python2.6 2.6.2-0ubuntu5
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-10.30-generic-pae
SourcePackage: python2.6
Uname: Linux 2.6.31-10-generic-pae i686

** Affects: ubuntuone-servers
     Importance: Critical
     Assignee: Elliot Murphy (statik)
         Status: Confirmed

** Affects: python2.6 (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: apport-bug i386

-- 
building of python C extensions is broken
https://bugs.launchpad.net/bugs/428004
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to