[Bug 1842618] Re: python3.7 might need a rebuild against the new glibc 2.30 - fails with stropts define

Christian Ehrhardt  1842618 at bugs.launchpad.net
Wed Sep 4 07:47:46 UTC 2019


I hope I outlined the case with enough details, but this contains enough
assumptions that I'm not going to upload anything myself. But python and
glibc being the major elements in this clearly point to doko/infinitry -
so I'll subscribe them here and hope they will fill in the gaps (if any)
and resolve it.

P.S. adding samba as a "invalid" task for tracking purposes

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to python3.7 in Ubuntu.
https://bugs.launchpad.net/bugs/1842618

Title:
  python3.7 might need a rebuild against the new glibc 2.30 - fails with
  stropts define

Status in python3.7 package in Ubuntu:
  New

Bug description:
  Hi,
  this was triggered by an issue rebuilding samba in Eoan.

  In file included from ../../source4/heimdal_build/krb5-types.h:8,                
                   from ../../source4/heimdal/lib/krb5/krb5.h:42,                  
                   from ../../lib/replace/system/kerberos.h:33,                    
                   from ../../auth/credentials/pycredentials.c:34:                 
  ../../lib/replace/system/network.h:91:10: fatal error: stropts.h: No such file or directory
     91 | #include <stropts.h>                                                     
        |          ^~~~~~~~~~~  

  After some initial confusion it turned out that nothing in samba
  enables HAVE_STROPTS_H and the configure stage properly detects:

  Checking for header stropts.h                                : no

  Never the less this triggered:
  ../../lib/replace/system/network.h
  #ifdef HAVE_STROPTS_H
  #include <stropts.h>
  #endif

  And due to glibc 2.30 containing [1] no stropts files are shipped anymore.
  Therefore the above failure happens and the build aborts.

  But since nothing in samba defines HAVE_STROPTS_H I had to reach out
  and checked an eoan-proposed build environment. There I found that
  python (this part of samba builds pycredentials.c and therefore has
  python related includes) is the root cause for this.

  usr/include/x86_64-linux-gnu/python3.7m/pyconfig.h:986:#define
  HAVE_STROPTS_H 1

  So everything that includes pyconfig.h direct or indirect and then
  based on HAVE_STROPTS_H will include stropts.h will be a broken build
  right now.

  pyconfig.h is generated on the build of python, so I guess we need a
  no change rebuild of python to resolve this?

  [1]:
  https://github.com/bminor/glibc/commit/a0a0dc83173ce11ff45105fd32e5d14356cdfb9c

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python3.7/+bug/1842618/+subscriptions



More information about the foundations-bugs mailing list