[zeromq-dev] ZMQ Python with Pypy

Justin Cook jhcook at gmail.com
Mon Mar 5 11:46:07 CET 2012


And yet, even more:

I printed out the trace and found the config variable "CC" being
passed to os.path.basename returns None so basename raises an error.

Traceback (most recent call last):
  File "setup.py", line 251, in run
    config = detect_zmq(self.tempdir, **settings)
  File "/home/jcook/pyzmq-2.1.11/buildutils.py", line 123, in detect_zmq
    cc.link_executable(objs, efile, extra_preargs=lpreargs)
  File "/usr/lib64/pypy-1.8/lib-python/modified-2.7/distutils/ccompiler.py",
line 750, in link_executable
    debug, extra_preargs, extra_postargs, None, target_lang)
  File "/usr/lib64/pypy-1.8/lib-python/modified-2.7/distutils/unixccompiler.py",
line 233, in link
    libraries)
  File "/usr/lib64/pypy-1.8/lib-python/modified-2.7/distutils/ccompiler.py",
line 1121, in gen_lib_options
    opt = compiler.runtime_library_dir_option(dir)
  File "/usr/lib64/pypy-1.8/lib-python/modified-2.7/distutils/unixccompiler.py",
line 300, in runtime_library_dir_option
    compiler = os.path.basename(sysconfig.get_config_var("CC"))
  File "/usr/lib64/pypy-1.8/lib-python/2.7/posixpath.py", line 112, in basename
    i = p.rfind('/') + 1
AttributeError: 'NoneType' object has no attribute 'rfind'


On Mon, Mar 5, 2012 at 9:24 AM, Justin Cook <jhcook at gmail.com> wrote:
> Here is more information (yeah a lot of it) from pdb stepping through
> execution of setup.py:
>
>
>
>
> [jcook at jcsl6vm1home pyzmq-2.1.11]$ pypy -m pdb setup.py configure
>> /home/jcook/pyzmq-2.1.11/setup.py(31)<module>()
> -> from __future__ import with_statement
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(33)<module>()
> -> import copy
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(34)<module>()
> -> import os
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(35)<module>()
> -> import re
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(36)<module>()
> -> import shutil
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(37)<module>()
> -> import sys
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(38)<module>()
> -> from traceback import print_exc
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(40)<module>()
> -> from distutils.core import setup, Command
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(41)<module>()
> -> from distutils.ccompiler import get_default_compiler
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(42)<module>()
> -> from distutils.extension import Extension
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(43)<module>()
> -> from distutils.errors import CompileError, LinkError
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(44)<module>()
> -> from distutils.command.build import build
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(45)<module>()
> -> from distutils.command.build_ext import build_ext
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(46)<module>()
> -> from distutils.command.sdist import sdist
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(48)<module>()
> -> from unittest import TextTestRunner, TestLoader
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(49)<module>()
> -> from glob import glob
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(50)<module>()
> -> from os.path import splitext, basename, join as pjoin
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(52)<module>()
> -> from subprocess import Popen, PIPE
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(53)<module>()
> -> import logging
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(55)<module>()
> -> try:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(56)<module>()
> -> from configparser import ConfigParser
> (Pdb) next
> ImportError: 'No module named configparser'
>> /home/jcook/pyzmq-2.1.11/setup.py(56)<module>()
> -> from configparser import ConfigParser
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(57)<module>()
> -> except:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(58)<module>()
> -> from ConfigParser import ConfigParser
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(60)<module>()
> -> try:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(61)<module>()
> -> import nose
> (Pdb) next
> ImportError: 'No module named nose'
>> /home/jcook/pyzmq-2.1.11/setup.py(61)<module>()
> -> import nose
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(62)<module>()
> -> except ImportError:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(63)<module>()
> -> nose = None
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(66)<module>()
> -> from buildutils import (discover_settings, v_str, localpath,
> savepickle, loadpickle, detect_zmq,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(75)<module>()
> -> if get_default_compiler() in ('unix', 'mingw32'):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(76)<module>()
> -> ignore_common_warnings=True
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(81)<module>()
> -> min_zmq = (2,1,4)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(84)<module>()
> -> if sys.platform.startswith('win'):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(86)<module>()
> -> elif sys.platform == 'darwin':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(89)<module>()
> -> lib_ext = '.so'
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(92)<module>()
> -> doing_bdist = any(arg.startswith('bdist') for arg in sys.argv[1:])
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(99)<module>()
> -> ZMQ = discover_settings()
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(101)<module>()
> -> if ZMQ is not None and not os.path.exists(ZMQ):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(106)<module>()
> -> if sys.platform.startswith('win'):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(116)<module>()
> -> COMPILER_SETTINGS = {
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(117)<module>()
> -> 'libraries'      : ['zmq'],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(118)<module>()
> -> 'include_dirs'   : [],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(119)<module>()
> -> 'library_dirs'   : [],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(123)<module>()
> -> if sys.platform.startswith('freebsd'):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(126)<module>()
> -> if ZMQ is not None:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(127)<module>()
> -> COMPILER_SETTINGS['include_dirs'] += [pjoin(ZMQ, 'include')]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(128)<module>()
> -> COMPILER_SETTINGS['library_dirs'] += [pjoin(ZMQ, 'lib')]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(134)<module>()
> -> if doing_bdist:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(143)<module>()
> -> elif sys.platform != 'darwin':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(144)<module>()
> -> COMPILER_SETTINGS['runtime_library_dirs'] = [os.path.abspath(x) for
> x in COMPILER_SETTINGS['library_dirs']]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(144)<module>()
> -> COMPILER_SETTINGS['runtime_library_dirs'] = [os.path.abspath(x) for
> x in COMPILER_SETTINGS['library_dirs']]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(151)<module>()
> -> class Configure(Command):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(282)<module>()
> -> class TestCommand(Command):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(328)<module>()
> -> class GitRevisionCommand(Command):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(369)<module>()
> -> class CleanCommand(Command):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(410)<module>()
> -> class CheckSDist(sdist):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(431)<module>()
> -> class CopyingBuild(build):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(441)<module>()
> -> class CheckingBuildExt(build_ext):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(471)<module>()
> -> extra_flags = []
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(472)<module>()
> -> if ignore_common_warnings:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(473)<module>()
> -> for warning in ('unused-function', 'strict-aliasing'):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(474)<module>()
> -> extra_flags.append('-Wno-'+warning)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(473)<module>()
> -> for warning in ('unused-function', 'strict-aliasing'):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(474)<module>()
> -> extra_flags.append('-Wno-'+warning)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(473)<module>()
> -> for warning in ('unused-function', 'strict-aliasing'):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(476)<module>()
> -> COMPILER_SETTINGS['extra_compile_args'] = extra_flags
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(482)<module>()
> -> cmdclass = {'test':TestCommand, 'clean':CleanCommand,
> 'revision':GitRevisionCommand,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(483)<module>()
> -> 'configure': Configure, 'build': CopyingBuild}
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(485)<module>()
> -> COMPILER_SETTINGS['include_dirs'] += [pjoin('zmq', sub) for sub in
> ('utils','core','devices')]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(485)<module>()
> -> COMPILER_SETTINGS['include_dirs'] += [pjoin('zmq', sub) for sub in
> ('utils','core','devices')]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(485)<module>()
> -> COMPILER_SETTINGS['include_dirs'] += [pjoin('zmq', sub) for sub in
> ('utils','core','devices')]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(485)<module>()
> -> COMPILER_SETTINGS['include_dirs'] += [pjoin('zmq', sub) for sub in
> ('utils','core','devices')]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(487)<module>()
> -> def pxd(subdir, name):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(490)<module>()
> -> def pyx(subdir, name):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(493)<module>()
> -> def dotc(subdir, name):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(496)<module>()
> -> libzmq = pxd('core', 'libzmq')
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(497)<module>()
> -> buffers = pxd('utils', 'buffers')
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(498)<module>()
> -> message = pxd('core', 'message')
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(499)<module>()
> -> context = pxd('core', 'context')
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(500)<module>()
> -> socket = pxd('core', 'socket')
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(501)<module>()
> -> monqueue = pxd('devices', 'monitoredqueue')
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(503)<module>()
> -> submodules = dict(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(504)<module>()
> -> core = {'constants': [libzmq],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(505)<module>()
> -> 'error':[libzmq],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(506)<module>()
> -> 'poll':[libzmq, socket, context],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(507)<module>()
> -> 'stopwatch':[libzmq, pxd('core','stopwatch')],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(508)<module>()
> -> 'context':[context, libzmq],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(509)<module>()
> -> 'message':[libzmq, buffers, message],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(510)<module>()
> -> 'socket':[context, message, socket, libzmq, buffers],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(511)<module>()
> -> 'device':[libzmq, socket, context],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(512)<module>()
> -> 'version':[libzmq],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(514)<module>()
> -> devices = {
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(515)<module>()
> -> 'monitoredqueue':[buffers, libzmq, monqueue, socket, context],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(517)<module>()
> -> utils = {
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(518)<module>()
> -> 'initthreads':[libzmq],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(519)<module>()
> -> 'rebuffer':[buffers],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(523)<module>()
> -> try:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(524)<module>()
> -> from Cython.Distutils import build_ext
> (Pdb) next
> ImportError: 'No module named Cython'
>> /home/jcook/pyzmq-2.1.11/setup.py(524)<module>()
> -> from Cython.Distutils import build_ext
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(526)<module>()
> -> except ImportError:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(527)<module>()
> -> cython=False
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(528)<module>()
> -> suffix = '.c'
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(529)<module>()
> -> cmdclass['build_ext'] = CheckingBuildExt
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(551)<module>()
> -> extensions = []
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(552)<module>()
> -> for submod, packages in submodules.items():
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(552)<module>()
> -> for submod, packages in submodules.items():
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(552)<module>()
> -> for submod, packages in submodules.items():
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(554)<module>()
> -> sources = [pjoin('zmq', submod, pkg+suffix)]
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(555)<module>()
> -> if suffix == '.pyx':
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(557)<module>()
> -> ext = Extension(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(558)<module>()
> -> 'zmq.%s.%s'%(submod, pkg),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(559)<module>()
> -> sources = sources,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(560)<module>()
> -> **COMPILER_SETTINGS
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(562)<module>()
> -> extensions.append(ext)
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(553)<module>()
> -> for pkg in sorted(packages):
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(552)<module>()
> -> for submod, packages in submodules.items():
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(565)<module>()
> -> package_data = {'zmq':['*.pxd'],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(566)<module>()
> -> 'zmq.core':['*.pxd'],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(567)<module>()
> -> 'zmq.devices':['*.pxd'],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(568)<module>()
> -> 'zmq.utils':['*.pxd', '*.h'],
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(571)<module>()
> -> if sys.platform.startswith('win') or doing_bdist:
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(574)<module>()
> -> def extract_version():
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(588)<module>()
> -> def find_packages():
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(604)<module>()
> -> """
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(609)<module>()
> -> setup(
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(610)<module>()
> -> name = "pyzmq",
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(611)<module>()
> -> version = extract_version(),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(612)<module>()
> -> packages = find_packages(),
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(613)<module>()
> -> ext_modules = extensions,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(614)<module>()
> -> package_data = package_data,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(615)<module>()
> -> author = "Brian E. Granger, Min Ragan-Kelley",
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(616)<module>()
> -> author_email = "zeromq-dev at lists.zeromq.org",
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(617)<module>()
> -> url = 'http://github.com/zeromq/pyzmq',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(618)<module>()
> -> download_url = 'http://github.com/zeromq/pyzmq/downloads',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(619)<module>()
> -> description = "Python bindings for 0MQ.",
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(620)<module>()
> -> long_description = long_desc,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(621)<module>()
> -> license = "LGPL",
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(622)<module>()
> -> cmdclass = cmdclass,
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(624)<module>()
> -> 'Development Status :: 5 - Production/Stable',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(625)<module>()
> -> 'Intended Audience :: Developers',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(626)<module>()
> -> 'Intended Audience :: Financial and Insurance Industry',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(627)<module>()
> -> 'Intended Audience :: Science/Research',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(628)<module>()
> -> 'Intended Audience :: System Administrators',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(629)<module>()
> -> 'License :: OSI Approved :: GNU Library or Lesser General Public
> License (LGPL)',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(630)<module>()
> -> 'Operating System :: MacOS :: MacOS X',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(631)<module>()
> -> 'Operating System :: Microsoft :: Windows',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(632)<module>()
> -> 'Operating System :: POSIX',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(633)<module>()
> -> 'Topic :: System :: Networking',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(634)<module>()
> -> 'Programming Language :: Python :: 2',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(635)<module>()
> -> 'Programming Language :: Python :: 2.5',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(636)<module>()
> -> 'Programming Language :: Python :: 2.6',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(637)<module>()
> -> 'Programming Language :: Python :: 2.7',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(638)<module>()
> -> 'Programming Language :: Python :: 3',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(639)<module>()
> -> 'Programming Language :: Python :: 3.0',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(640)<module>()
> -> 'Programming Language :: Python :: 3.1',
> (Pdb) next
>> /home/jcook/pyzmq-2.1.11/setup.py(641)<module>()
> -> 'Programming Language :: Python :: 3.2',
> (Pdb) next
> running configure
> ******************************************
> Configure: Autodetecting ZMQ settings...
>    Custom ZMQ dir:       /usr/local/lib
> cc -fPIC -Wimplicit -I/usr/local/lib/include -Izmq/utils -Izmq/core
> -Izmq/devices -c detect/vers.c -o detect/vers.o
> error: 'NoneType' object has no attribute 'rfind'
> Fatal:
>    Failed to build or run ZMQ test program.  Please check to make sure:
>
>    * You have a C compiler installed
>    * A development version of Python is installed (including header files)
>    * A development version of ZMQ >= 2.1.4 is installed (including
> header files)
>    * If ZMQ is not in a default location, supply the argument --zmq=<path>
>    * If you did recently install ZMQ to a default location,
>      try rebuilding the ld cache with `sudo ldconfig`
>      or specify zmq's location with `--zmq=/usr/local`
>
> ******************************************
> SystemExit: SystemExit(1,)
>> /home/jcook/pyzmq-2.1.11/setup.py(641)<module>()
> -> 'Programming Language :: Python :: 3.2',
> Traceback (most recent call last):
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/pdb.py", line 1314, in main
>    pdb._runscript(mainpyfile)
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/pdb.py", line 1233, in _runscript
>    self.run(statement)
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/bdb.py", line 387, in run
>    exec cmd in globals, locals
>  File "<string>", line 1, in <module>
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/bdb.py", line 54, in trace_dispatch
>    return self.dispatch_exception(frame, arg)
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/bdb.py", line 91, in
> dispatch_exception
>    self.user_exception(frame, arg)
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/pdb.py", line 203, in user_exception
>    self.interaction(frame, exc_traceback)
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/pdb.py", line 210, in interaction
>    self.cmdloop()
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/cmd.py", line 130, in cmdloop
>    line = raw_input(self.prompt)
> ValueError: I/O operation on closed file
> Uncaught exception. Entering post mortem debugging
> Running 'cont' or 'step' will restart the program
>> /usr/lib64/pypy-1.8/lib-python/2.7/cmd.py(130)cmdloop()
> -> line = raw_input(self.prompt)
> Traceback (most recent call last):
>  File "app_main.py", line 51, in run_toplevel
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/runpy.py", line 162, in
> _run_module_as_main
>    "__main__", fname, loader, pkg_name)
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/runpy.py", line 72, in _run_code
>    exec code in run_globals
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/pdb.py", line 1338, in <module>
>    pdb.main()
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/pdb.py", line 1330, in main
>    pdb.interaction(None, t)
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/pdb.py", line 210, in interaction
>    self.cmdloop()
>  File "/usr/lib64/pypy-1.8/lib-python/2.7/cmd.py", line 130, in cmdloop
>    line = raw_input(self.prompt)
> ValueError: I/O operation on closed file
> [jcook at jcsl6vm1home pyzmq-2.1.11]$
>
>
>
>
>
>
>
> On Mon, Mar 5, 2012 at 9:05 AM, Justin Cook <jhcook at gmail.com> wrote:
>> Sorry to keep disturbing you folk with my Python, but all was
>> successful on the RPM building of 3.1.0-beta and the latest Python
>> bindings RPM. But, I was fiddling around this weekend trying to get
>> Pypy working with the 3.1.0-beta source and build against the latest
>> Python bindings. Here is what I've got to:
>>
>> [jcook at jcsl6vm1home pyzmq-2.1.11]$ pypy setup.py configure
>> running configure
>> ******************************************
>> Configure: Autodetecting ZMQ settings...
>>    Custom ZMQ dir:       /usr/local/lib
>> cc -fPIC -Wimplicit -I/usr/local/lib/include -Izmq/utils -Izmq/core
>> -Izmq/devices -c detect/vers.c -o detect/vers.o
>> error: 'NoneType' object has no attribute 'rfind'
>>
>> ...
>>
>> [jcook at jcsl6vm1home pyzmq-2.1.11]$ rpm -qa | grep pypy
>> pypy-1.8-2.el6.x86_64
>> pypy-libs-1.8-2.el6.x86_64
>> pypy-devel-1.8-2.el6.x86_64
>>
>> I've searched Google for that error. While there are known issues in
>> the past concerning this error (with other code), none are relevant
>> (or I'm deceiving myself). Once again, help would be appreciated. This
>> works clean with `python setup.py configure`.



-- 
Justin Cook

http://www.linkedin.com/in/jhcook



More information about the zeromq-dev mailing list