https://sourceware.org/bugzilla/show_bug.cgi?id=31208

--- Comment #4 from Matt Wozniski <godlygeek at gmail dot com> ---
> So how did that load segment get there?

I strongly suspect that it's the result of the ELF editing performed by
`auditwheel repair`, from https://github.com/pypa/auditwheel - though I haven't
dug in to confirm that for certain.

The error message that you get if you try to dlopen() the shared library after
having called `strip` on it is:

    ELF load command address/offset not properly aligned

There's a lot of reports of that error message on Google for Python packages
that were packaged by `auditwheel repair`:

https://github.com/linuxdeploy/linuxdeploy/issues/204
https://github.com/marcelotduarte/cx_Freeze/issues/1048
https://github.com/scipy/scipy/issues/17438

etc, which certainly seems to point a finger in the direction of the common
Python packaging tools. Idiomatic pre-compiled Python libraries vendor their
shared library dependencies, and `auditwheel repair` is the tooling used to do
so (including renaming the vendored shared libraries to avoid version
collisions between Python packages, and editing the shared libraries themselves
to update the SONAME and DT_NEEDED to match the renamed libraries).

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to