[ 
https://issues.apache.org/jira/browse/PROTON-2550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17542639#comment-17542639
 ] 

Jiri Daněk commented on PROTON-2550:
------------------------------------

Maybe add {{--single-version-externally-managed}} to setup.py execution. It 
helped in the router with a similar problem, 
https://github.com/skupperproject/skupper-router/commit/d92f53e923ed7b9fd06070513309d31888a5610b

> [python-binding] setup.py install does not create module directory when using 
> --prefix
> --------------------------------------------------------------------------------------
>
>                 Key: PROTON-2550
>                 URL: https://issues.apache.org/jira/browse/PROTON-2550
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: python-binding
>            Reporter: Kim van der Riet
>            Assignee: Andrew Stitcher
>            Priority: Major
>
> After building proton, installing the python bindings using the generated 
> *{{setup.py}}* does not create all of the necessary directories when used 
> with the *{{--prefix}}* option. In particular, a directory using the module 
> name *{{proton}}* is missing.
> The following install command from the cmake build directory:
> {noformat}
> $ export PYTHONPATH=/tmp/lib64/python3.10/site-packages
> $ cd python/dist/
> $ python setup.py install --prefix /tmp
> $ ls -l /tmp/lib64/python3.10/site-packages/
> total 3
> -rw-rw-r--. 1 kvdr kvdr  57 May 26 11:58 easy-install.pth
> drwxrwxr-x. 5 kvdr kvdr 160 May 26 11:58 
> python_qpid_proton-0.38.0.dev0-py3.10-linux-x86_64.egg
> {noformat}
> produces a single {{python_qpid_proton-0.38.0.dev0-py3.10-linux-x86_64.egg}} 
> directory (and a {{easy-install.pth}} file if the {{PYTHONPATH}} is set prior 
> to the install).
> This is insufficient to use module proton, even with the PYTHONPATH set:
> {noformat}
> $ cd ~ # Exit from dist directory which contains python install artifacts
> $ echo $PYTHONPATH
> /tmp/lib64/python3.10/site-packages
> $ python
> >>> import proton
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
> ModuleNotFoundError: No module named 'proton'
> >>> 
> {noformat}
> However, a workaround exists by adding a symbolic link *{{proton}}* pointing 
> to the .egg directory:
> {noformat}
> $ cd /tmp/lib64/python3.10/site-packages/
> $ ln -s python_qpid_proton-0.38.0.dev0-py3.10-linux-x86_64.egg proton
> $ cd ~ # Exit from dist directory which contains python install artifacts
> $ python
> >>> import proton
> >>> proton.__path__
> _NamespacePath(['/tmp/lib64/python3.10/site-packages/proton'])
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to