pyzmq socket.curve_secretkey给出了无效的参数错误

时间:2015-02-19 10:35:45

标签: python zeromq

我已经安装了libsodium(通过brew)和pyzmq(在virtualenv中,非root用户)。 我试图获得曲线验证工作的示例源, (它在https://github.com/zeromq/pyzmq/blob/master/examples/security/stonehouse.py) 但是它给了我以下错误:

Traceback (most recent call last):
  File "ironhouse.py", line 95, in <module>
    run()
  File "ironhouse.py", line 51, in run
    server.curve_secretkey = server_secret
  File "/Users/aaa/.virtualenvs/zmq/lib/python2.7/site-packages/zmq/sugar/attrsettr.py", line 29, in __setattr__
    self._set_attr_opt(upper_key, opt, value)
  File "/Users/aaa/.virtualenvs/zmq/lib/python2.7/site-packages/zmq/sugar/attrsettr.py", line 33, in _set_attr_opt
    self.set(opt, value)
  File "zmq/backend/cython/socket.pyx", line 343, in zmq.backend.cython.socket.Socket.set (zmq/backend/cython/socket.c:3397)
  File "zmq/backend/cython/checkrc.pxd", line 21, in zmq.backend.cython.checkrc._check_rc (zmq/backend/cython/socket.c:6248)
zmq.error.ZMQError: Invalid argument

有什么方法可以让它发挥作用吗?谢谢:))

1 个答案:

答案 0 :(得分:0)

假设已经安装了libsodium:

删除当前版本的PyZMQ,同时删除当前版本的libzmq。

安全地玩 - 从ZeroMQ网站下载当前版本候选tarball;编译它:

wget http://download.zeromq.org/zeromq-4.1.0-rc1.tar.gz
tar zxvf zeromq-4.1.0-rc1.tar.gz
cd zeromq-4.1.0-rc1
./autogen.sh
./configure && make check
sudo make install

然后,重新安装PyZMQ;它应该针对刚刚安装的新ZeroMQ进行编译。

希望曲线验证现在适合你。