[Python-Dev] How to fix the incorrect shared library extension on linux for 3.2 and newer?

Matthias Klose doko at ubuntu.com
Wed Mar 20 21:18:19 CET 2013


This is http://bugs.python.org/issue16754, affecting Linux systems only, and
only those which don't provide static libraries. PEP 3149 did change the SO
macro to include the ABI tag, although the SO macro is used to search for shared
system libraries too.  E.g. searching for the jpeg library search for a file
libjpeg.cpython3.3m.so, which is not found. If the static library libjpeg.a is
found, it is taken, and linked as -ljpeg, which then links with the shared library.

The patch in the issue now makes a distinction between EXT_SUFFIX and
SHLIB_SUFFIX, and restores the value of SO to SHLIB_SUFFIX.  Now this could
break users of sysconfig.get_config_var('SO'), however I don't see a better way
than to restore the original behaviour and advise people to use the new config
variables.

  Matthias


More information about the Python-Dev mailing list