Opened 8 years ago

Closed 8 years ago

#49163 closed defect (worksforme)

uhd @3.9.1_0: Symbol not found: _CRYPTO_malloc_debug_init

Reported by: sayhong@… Owned by: michaelld (Michael Dickens)
Priority: Normal Milestone:
Component: ports Version: 2.3.4
Keywords: Cc:
Port: uhd

Description

Hi all, trying to follow instructions to install gr-osmosdr.

Getting errors on install uhd. Been checking for a while on this website but no dice.

Attachments (1)

main.log (1.5 MB) - added by sayhong@… 8 years ago.

Download all attachments as: .zip

Change History (10)

Changed 8 years ago by sayhong@…

Attachment: main.log added

comment:1 Changed 8 years ago by sayhong@…

Error message from macports 2.3.4

--->  Attempting to fetch uhd-3.9.1_0+docs+examples+libusb+manpages+manual+python27+test.darwin_14.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/uhd
--->  Fetching distfiles for uhd
--->  Verifying checksums for uhd
--->  Extracting uhd
--->  Configuring uhd
--->  Building uhd
--->  Staging uhd into destroot
Error: org.macports.destroot for port uhd returned: command execution failed
Error: Failed to install uhd
Please see the log file for port uhd for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/main.log
Error: The following dependencies were not installed: gnuradio uhd volk xmlto findutils getopt gr-fcdproplus hackrf rtl-sdr
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port gr-osmosdr failed
Last edited 8 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:2 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: changed from macports-tickets@… to michaelld@…
Port: uhd added
Summary: Unable to install uhd and gr-osmosdruhd @3.9.1_0: Symbol not found: _CRYPTO_malloc_debug_init

Hmm, log says:

:info:destroot cffi.ffiplatform.VerificationError: importing '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so': dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so, 2): Symbol not found: _CRYPTO_malloc_debug_init
:info:destroot   Referenced from: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so
:info:destroot   Expected in: flat namespace

Haven't seen that one before.

comment:3 Changed 8 years ago by michaelld (Michael Dickens)

Interesting. Let me look into it.

comment:4 Changed 8 years ago by michaelld (Michael Dickens)

I'll fix this issue sometime; pretty busy with various other things right now. A way around this is to temporarily deactivate a couple of ports, clean uhd, install uhd, then activate those other ports. The ports causing this seem to be py27-cffi and py27-openssl. I've no idea why just right now. Here's my recommendation as a script:

sudo port -f deactivate py27-cffi py27-openssl
sudo port clean uhd
sudo port install uhd

and if that works, then:

sudo port activate py27-cffi py27-openssl

If that does not work, then attach the new log file & we'll figure out something more to try.

comment:5 Changed 8 years ago by sayhong@…

Getting stranger by the minute....

st5rr5:~ stans$ sudo port -f deactivate py27-cffi py27-openssl
Password:
Error: port deactivate failed: Image error: port py27-cffi is not active.
st5rr5:~ stan$ sudo port -f deactivate py27-openssl
Error: port deactivate failed: Image error: port py27-openssl is not active.

comment:6 Changed 8 years ago by michaelld (Michael Dickens)

Yes: strange! What do the following return:

port provides /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cffi/verifier.py
port provides /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/OpenSSL/__init__.py

comment:7 Changed 8 years ago by michaelld (Michael Dickens)

More importantly, what do the following return:

port provides /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so
port provides /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cryptography/__init__.py

If all of the 'port provides' comes back as something like "[FILE] is not provided by a MacPorts port.", then there's something strange about your MacPorts install. What -might- work is to "rm -rf" those directories; for example, if the file "cffi/verified.py" is not provided by a MacPorts port, then you could do:

pushd /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
sudo rm -rf cffi

And, ditto for the other 2 directories (OpenSSL and cryptography).

Alternatively, you can do something like:

sudo port -f install py27-openssl py27-cffi py27-cryptography

which will just overwrite the files that are currently there, and see if that works.

No matter what you try above, you'll have to do:

sudo port clean uhd

and (re)build uhd from scratch; sorry about that!

comment:8 Changed 8 years ago by sayhong@…

Managed to (re)build uhd after some deleting.

First,

$ port provides /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cffi/verifier.py
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/cffi/verifier.py is not provided by a MacPorts port.

$ port provides /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/OpenSSL/__init__.py
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/OpenSSL/__init__.py is not provided by a MacPorts port.

Next,

$sudo rm -rf cffi/ cffi-1.1.2-py2.7.egg-info/ OpenSSL/ cryptography/

Anyone know what this egg-info is? I see it for OpenSSL as well.

$sudo port clean uhd
$sudo port install uhd
--->  Computing dependencies for uhd
--->  Fetching archive for und
...
--->  Updating database of binaries
--->  Scanning binaries for linking errors
--->  No broken files found. 

uhd installed! :) Thanks michaeld!

comment:9 Changed 8 years ago by michaelld (Michael Dickens)

Resolution: worksforme
Status: newclosed

The egg-info is just info Python uses for a given module; it is installed at the same time as the Python files, and can be safely removed at the same time.

I'm glad deleting those directories / files worked. Cruft happens.

Note: See TracTickets for help on using tickets.