Message368086
On platforms which configure identifies as bi-arch platform, libdir is set to $[exec_prefix}/lib64, which results in the C extensions to get installed in e.g. /usr/local/lib64/python3.8/lib-dynload/.
However, the getpath.c routines use a fixed "lib/python" VERSION (see https://github.com/python/cpython/blob/3.8/Modules/getpath.c#L1200) path to build sys.path. As a result, the built Python binary cannot load the builtin C extensions.
A work-around on OpenSUSE is to set CONFIG_SITE="" when configuring Python. This disables the bi-arch support and has libdir default to ${exec_prefix}/lib again.
Looking at the master branch, this may already have been fixed for 3.9, since a PLATLIBDIR variable is used instead. The patch would have to be backported to earlier Python versions as well. |
|
Date |
User |
Action |
Args |
2020-05-04 21:51:07 | lemburg | set | recipients:
+ lemburg |
2020-05-04 21:51:07 | lemburg | set | messageid: <1588629067.84.0.887023365467.issue40505@roundup.psfhosted.org> |
2020-05-04 21:51:07 | lemburg | link | issue40505 messages |
2020-05-04 21:51:07 | lemburg | create | |
|