pyzmq: A great run-time problem of pyzmq 16.0.0 on CentOS 6

First I type "pip install pyzmq==16.0.0 "(pip version is 9.0.1) and pip tells me pyzmq is successfully installed. Second when I try to run my python script I would get a run-time error as following:

File "/root/.local/lib/python2.7/site-packages/zmq/__init__.py", line 34, in <module>
    from zmq import backend
  File "/root/.local/lib/python2.7/site-packages/zmq/backend/__init__.py", line 40, in <module>
    reraise(*exc_info)
  File "/root/.local/lib/python2.7/site-packages/zmq/backend/__init__.py", line 27, in <module>
    _ns = select_backend(first)
  File "/root/.local/lib/python2.7/site-packages/zmq/backend/select.py", line 26, in select_backend
    mod = __import__(name, fromlist=public_api)
  File "/root/.local/lib/python2.7/site-packages/zmq/backend/cython/__init__.py", line 6, in <module>
    from . import (constants, error, message, context,
ImportError: /root/.local/lib/python2.7/site-packages/zmq/backend/cython/error.so: undefined symbol: zmq_strerror

I thought I did not install libzmq-devel but after I installed it the problem still exists. BTW, on Ubuntu 12.04 and Ubuntu 14.04 pip install pyzmq==16.0.0 can successfully install pyzmq and no run-time error. Also on Ubuntu when I type “pip install pyzmq==16.0.0 --only-binary :all:” , pip will download a .whl file first and install pyzmq successfully but on CentOS “pip install pyzmq==16.0.0 --only-binary :all:” will tell me “no matching distributions” something like that. It seems that pyzmq 16.0.0 does not have a binary distribution on CentOS.

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 16 (6 by maintainers)

Most upvoted comments

FWIW, I also stumble over this problem, on Titan@ORNL. The compute nodes show:

$ python -c 'import pprint,pip.pep425tags; pprint.pprint(pip.pep425tags.get_supported())'

[('cp27', 'cp27m', 'manylinux1_x86_64'),
 ('cp27', 'cp27m', 'linux_x86_64'),
 ('cp27', 'none', 'manylinux1_x86_64'),
 ('cp27', 'none', 'linux_x86_64'),
 ('py2', 'none', 'manylinux1_x86_64'),
 ('py2', 'none', 'linux_x86_64'),
 ('cp27', 'none', 'any'),
 ('cp2', 'none', 'any'),
 ('py27', 'none', 'any'),
 ('py2', 'none', 'any'),
 ('py26', 'none', 'any'),
 ('py25', 'none', 'any'),
 ('py24', 'none', 'any'),
 ('py23', 'none', 'any'),
 ('py22', 'none', 'any'),
 ('py21', 'none', 'any'),
 ('py20', 'none', 'any')]

and a naive pip install pyzmq results in an unusable module

$ python -c 'import zmq'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/lustre/atlas2/csc230/scratch/merzky1/radical.pilot.sandbox/ve.ornl.titan_aprun.0.46/lib/python2.7/site-packages/zmq/__init__.py", line 34, in <module>
    from zmq import backend
  File "/lustre/atlas2/csc230/scratch/merzky1/radical.pilot.sandbox/ve.ornl.titan_aprun.0.46/lib/python2.7/site-packages/zmq/backend/__init__.py", line 40, in <module>
    reraise(*exc_info)
  File "/lustre/atlas2/csc230/scratch/merzky1/radical.pilot.sandbox/ve.ornl.titan_aprun.0.46/lib/python2.7/site-packages/zmq/backend/__init__.py", line 27, in <module>
    _ns = select_backend(first)
  File "/lustre/atlas2/csc230/scratch/merzky1/radical.pilot.sandbox/ve.ornl.titan_aprun.0.46/lib/python2.7/site-packages/zmq/backend/select.py", line 26, in select_backend
    mod = __import__(name, fromlist=public_api)
  File "/lustre/atlas2/csc230/scratch/merzky1/radical.pilot.sandbox/ve.ornl.titan_aprun.0.46/lib/python2.7/site-packages/zmq/backend/cython/__init__.py", line 6, in <module>
    from . import (constants, error, message, context,
ImportError: /lustre/atlas2/csc230/scratch/merzky1/radical.pilot.sandbox/ve.ornl.titan_aprun.0.46/lib/python2.7/site-packages/zmq/backend/cython/error.so: undefined symbol: zmq_strerror

Advice would be appreciated. Thanks, Andre.