[issue34814] makesetup: must link C extensions to libpython when compiled in shared mode

Xavier de Gaye report at bugs.python.org
Wed Sep 26 16:52:50 EDT 2018


Xavier de Gaye <xdegaye at gmail.com> added the comment:

> Downstream (RHEL) issue:
> https://bugzilla.redhat.com/show_bug.cgi?id=1585201

Not sure that this is a bug. As Petr Viktorin points out in Comment #4, the reproducer is not expected to work because of the semantics of RTLD_LOCAL.

So the current bpo issue would be related only to a slight inconsistency between the build of extension modules by distutils and those built by the Makefile.

However, it seems that the loader of Android requires that those libraries be explicitly linked against libpython:

* The last paragraph on https://github.com/termux/termux-packages and the related termux issue "Shared library symbols not visible on dlopen()?" (at https://github.com/android-ndk/ndk/issues/201) explain this point.

* The issue I have submitted to pyephem "android cross-build needs the extension module to be linked against the math library" at https://github.com/brandon-rhodes/pyephem/issues/114 confirms this point on Android API level 21.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue34814>
_______________________________________


More information about the Python-bugs-list mailing list