[Distutils] draft PEP: manylinux1

Nick Coghlan ncoghlan at gmail.com
Wed Jan 27 07:54:34 EST 2016

On 26 January 2016 at 23:17, Nick Coghlan <ncoghlan at gmail.com> wrote:
> On 26 January 2016 at 21:44, Antoine Pitrou <solipsis at pitrou.net> wrote:
>> On Tue, 26 Jan 2016 20:36:26 +1000
>> Nick Coghlan <ncoghlan at gmail.com> wrote:
>>> If I understand the problem correctly, the CentOS 5 gcc toolchain is
>>> old enough that it simply doesn't emit the info libabigail needs in
>>> order to work.
>> If you build on CentOS 5, you certainly want to use the RH developer
>> toolset 2 which gives you a modern-ish toolchain (gcc 4.8.2, IIRC).
> Yeah, that's the part I haven't clarified yet - whether it was just
> the base CentOS toolchain that was too old, or devtoolset-2.
> If abicompat et al all work with devtoolset-2, then it definitely
> makes sense to stick with the CentOS 5 baseline for now.

I followed this up with the ABI folks, and the problem is that the
elfutils in even DTS 2 is too old to support building libabigail, and
later versions of the developer toolset (3 & 4) don't support being
run on CentOS 5.

However, even if the build system is based on CentOS 5, *compatibility
scanners* like auditwheel can potentially be run on something newer,
so I've asked if it would work to use the older toolchain to build the
binaries, but then run the relevant ABI compatibility checks on the
almost-certainly-newer target distro.

If that's the case, then folks would be able to run a *static*
abicompat check over a virtualenv including pre-built extensions from
PyPI and be alerted to ABI compatibility problems, rather than getting
hard-to-debug segfaults at runtime.


Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia

More information about the Distutils-SIG mailing list