This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: setup.py can report builtin modules as missing modules
Type: behavior Stage: needs patch
Components: Build Versions: Python 3.9, Python 3.8, Python 3.7
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: christian.heimes, vstinner
Priority: normal Keywords:

Created on 2019-11-17 17:28 by christian.heimes, last changed 2022-04-11 14:59 by admin.

Messages (1)
msg356821 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2019-11-17 17:28
setup.py can report statically linked modules as missing when detect_modules() have flagged the modules as missing.

In my case I have modified Modules/Setup.local to statically link _ssl and _hashlib:

$ cat Modules/Setup.local 
SSL=/tmp/openssl
_socket socketmodule.c
_ssl _ssl.c -I$(SSL)/include $(SSL)/lib/libcrypto.a $(SSL)/lib/libssl.a
_hashlib _hashopenssl.c -I$(SSL)/include $(SSL)/lib/libcrypto.a

make successfully compiles _socket, _ssl, and _hashlib into the main interpreter binary. setup.py does not list _ssl and _hashlib as builtin but as missing modules because detect_modules() detects dependencies as missing.

The problem can be reproduced on an old Ubuntu or RHEL system with OpenSSL 1.0.1 and a custom OpenSSL installation.
History
Date User Action Args
2022-04-11 14:59:23adminsetgithub: 83013
2019-11-17 17:28:33christian.heimescreate