flintrock - ошибка либсодиума

Когда я пытаюсь использовать Flintrock на OSX 10.12 Sierra, я получаю сообщение об ошибке Symbol not found: _crypto_pwhash_str_alg

$ flintrock 
Traceback (most recent call last):
  File "/Users/stephen/anaconda3/bin/flintrock", line 11, in <module>
    load_entry_point('Flintrock==0.10.0.dev0', 'console_scripts', 'flintrock')()
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/pkg_resources/__init__.py", line 570, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2751, in load_entry_point
    return ep.load()
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2405, in load
    return self.resolve()
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/pkg_resources/__init__.py", line 2411, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/Flintrock-0.10.0.dev0-py3.6.egg/flintrock/__main__.py", line 5, in <module>
    from .flintrock import main
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/Flintrock-0.10.0.dev0-py3.6.egg/flintrock/flintrock.py", line 25, in <module>
    from . import ec2
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/Flintrock-0.10.0.dev0-py3.6.egg/flintrock/ec2.py", line 17, in <module>
    from .core import FlintrockCluster
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/Flintrock-0.10.0.dev0-py3.6.egg/flintrock/core.py", line 12, in <module>
    import paramiko
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/paramiko-2.3.1-py3.6.egg/paramiko/__init__.py", line 31, in <module>
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/paramiko-2.3.1-py3.6.egg/paramiko/transport.py", line 57, in <module>
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/paramiko-2.3.1-py3.6.egg/paramiko/ed25519key.py", line 22, in <module>
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/signing.py", line 19, in <module>
    import nacl.bindings
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/bindings/__init__.py", line 17, in <module>
    from nacl.bindings.crypto_box import (
  File "/Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/bindings/crypto_box.py", line 18, in <module>
    from nacl._sodium import ffi, lib
ImportError: dlopen(/Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/_sodium.abi3.so, 2): Symbol not found: _crypto_pwhash_str_alg
  Referenced from: /Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/_sodium.abi3.so
  Expected in: flat namespace
 in /Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/_sodium.abi3.so

После небольшой отладки я получил минимальный шаг воспроизведения, как этот.

$ python -c "from nacl._sodium import ffi, lib"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: dlopen(/Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/_sodium.abi3.so, 2): Symbol not found: _crypto_pwhash_str_alg
  Referenced from: /Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/_sodium.abi3.so
  Expected in: flat namespace
 in /Users/stephen/anaconda3/lib/python3.6/site-packages/PyNaCl-1.2.0-py3.6-macosx-10.9-x86_64.egg/nacl/_sodium.abi3.so

Так что, похоже, это связано с проблемой привязки libsodium python, но я понятия не имею, как ее решить.

Любые комментарии или ссылки будут оценены. Спасибо за чтение этого.

0 ответов

Другие вопросы по тегам