[openstack-dev] [Keystone] Symbol not found: _BIO_new_CMS

Morgan Fainberg morgan.fainberg at gmail.com
Thu Jan 15 00:59:03 UTC 2015


As discussed on IRC: Unfortunately OS X Yosemite ships with a woefully out of date OpenSSL, LDAP Lib, etc. Some of these are not easy to replace with homebrew (some are). These out of date libs are usually left only for compatibility while people move to Apple’s specific alternative libs.

Recently I ran into a couple issues with python packages that would not work without updating the setup.py (and not in a friendly way that should be done for up-stream, I think LDAP was the culprit this time). This headache made the packages unsuitable for installation in a venv via tox. As of before the 2014 holidays Keystone (and it’s Unit tests) are no longer supported on OS X. Your milage may vary with OS X older than Yosemite.

I recommend using Linux in a VM if you’re on OS X. Alternatively a bootcamp install of Linux would also work on most Apple laptops / machines.

Sorry for the bad news in this case.
—Morgan

> On Jan 14, 2015, at 2:45 PM, Arvind Tiwari (arvtiwar) <arvtiwar at cisco.com> wrote:
> 
> Hi All,
> 
> I am new to MAC OS, trying to setup Keystone development environment and stuck at running  the keystone tests, getting error (below) related to openssl while running tox. I am having “OpenSSL 1.0.1k 8 Jan 2015” version of OpenSSL.
> 
> Thanks in advance for any help,
> Arvind
> 
> $ tox -e py27
> py27 develop-inst-noop: /Users/arvtiwar/cloudDev/openstack/keystone
> py27 runtests: PYTHONHASHSEED='0'
> py27 runtests: commands[0] | python setup.py testr --slowest --testr-args=
> running testr
> running=
> OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \
> OS_STDERR_CAPTURE=${OS_STDERR_CAPTURE:-1} \
> OS_LOG_CAPTURE=${OS_LOG_CAPTURE:-1} \
> ${PYTHON:-python} -m subunit.run discover -t ./ ./keystone/tests --list 
> --- import errors ---
> Failed to import test module: keystone.tests
> Traceback (most recent call last):
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/unittest2/loader.py", line 479, in _find_test_path
>     package = self._get_module_from_name(name)
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/unittest2/loader.py", line 384, in _get_module_from_name
>     __import__(name)
>   File "keystone/tests/__init__.py", line 41, in <module>
>     from keystone.tests.core import *  # noqa
>   File "keystone/tests/core.py", line 41, in <module>
>     environment.use_eventlet()
>   File "keystone/common/environment/__init__.py", line 51, in wrapper
>     return func(*args, **kwargs)
>   File "keystone/common/environment/__init__.py", line 66, in use_eventlet
>     import eventlet
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/eventlet/__init__.py", line 10, in <module>
>     from eventlet import convenience
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/eventlet/convenience.py", line 3, in <module>
>     from eventlet import greenio
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/eventlet/greenio.py", line 644, in <module>
>     from OpenSSL import SSL
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/OpenSSL/__init__.py", line 8, in <module>
>     from OpenSSL import rand, crypto, SSL
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/OpenSSL/rand.py", line 11, in <module>
>     from OpenSSL._util import (
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/OpenSSL/_util.py", line 4, in <module>
>     binding = Binding()
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 113, in __init__
>     self._ensure_ffi_initialized()
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 123, in _ensure_ffi_initialized
>     cls._modules,
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cryptography/hazmat/bindings/utils.py", line 31, in load_library_for_binding
>     lib = ffi.verifier.load_library()
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cffi/verifier.py", line 75, in load_library
>     return self._load_library()
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cffi/verifier.py", line 151, in _load_library
>     return self._vengine.load_library()
>   File "/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cffi/vengine_cpy.py", line 149, in load_library
>     raise ffiplatform.VerificationError(error)
> VerificationError: importing '/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_70441dc9x8be47966.so': dlopen(/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_70441dc9x8be47966.so, 2): Symbol not found: _BIO_new_CMS
>   Referenced from: /Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_70441dc9x8be47966.so
>   Expected in: flat namespace
>  in /Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_70441dc9x8be47966.so
> Non-zero exit code (2) from test listing.
> error: testr failed (3)
> ERROR: InvocationError: '/Users/arvtiwar/cloudDev/openstack/keystone/.tox/py27/bin/python setup.py testr --slowest --testr-args='
> _____________________________________________________________________________________________ summary _____________________________________________________________________________________________
> ERROR:   py27: commands failed
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150114/f39f746e/attachment.html>


More information about the OpenStack-dev mailing list