-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: CI
-
None
We currently test on RHEL 6 in Evergreen. RHEL 6 ships OpenSSL 1.0.1. Python 3.7 requires OpenSSL 1.0.2+ to build the ssl module:
Python build finished successfully! The necessary bits to build these optional modules were not found: _bz2 _lzma _sqlite3 _ssl _tkinter _uuid readline To find the necessary bits, look in setup.py in detect_modules() for the module's name. The following modules found by detect_modules() in setup.py, have been built by the Makefile instead, as configured by the Setup files: atexit pwd time Could not build the ssl module! Python requires an OpenSSL 1.0.2 or 1.1 compatible libssl with X509_VERIFY_PARAM_set1_host(). LibreSSL 2.6.4 and earlier do not provide the necessary APIs, https://github.com/libressl-portable/portable/issues/381
Since Python 3.8 may drop support for OpenSSL < 1.1, I suggest we pick a distro that ships OpenSSL 1.1+ and build the Python versions that support 1.1+ there (2.7.13+, 3.5.3+). Debian 9 is available in Evergreen.