You are viewing a plain text version of this content. The canonical link for it is here.
Posted to proton@qpid.apache.org by "Ken Giusti (JIRA)" <ji...@apache.org> on 2015/07/23 22:07:05 UTC

[jira] [Created] (PROTON-958) [python] pip installed binding fails to find correct libqpid-proton.so

Ken Giusti created PROTON-958:
---------------------------------

             Summary: [python] pip installed binding fails to find correct libqpid-proton.so
                 Key: PROTON-958
                 URL: https://issues.apache.org/jira/browse/PROTON-958
             Project: Qpid Proton
          Issue Type: Bug
          Components: python-binding
    Affects Versions: 0.9.1
            Reporter: Ken Giusti
            Assignee: Ken Giusti
            Priority: Blocker
             Fix For: 0.10


The latest versions of pip keeps a cache of downloaded packages.  It also caches the results of any extensions built for those packages.   When a user tries to re-install (or install in a different virtualenv) a previously build package, the pre-built package is pulled from the cache and plopped into place.

Which is all great and fast...

... unless your extension also builds a shared library (libqpid-proton) and sets its RPATH to it.

This ends up with a cached _cproton.so with a RPATH pointing to the directory where the libqpid-proton.so was installed.  Woe be you if that was a virtualenv that you deleted (or updated).

This results in either "libqpid-proton.so not found" errors when importing the bindings, or symbol mismatches if the library was overwritten.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)