Python requires an OpenSSL 1.0.2 or 1.1 compatible libssl with X509_VERIFY_PARAM_set1_host(). code example

Example: 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

$ cd ~
$ wget https://www.openssl.org/source/openssl-1.1.1b.tar.gz
$ wget https://www.openssl.org/source/openssl-1.1.1b.tar.gz.sha256
$ sha256sum openssl-1.1.1b.tar.gz
$ cat openssl-1.1.1b.tar.gz.sha256
$ tar zxvf openssl-1.1.1b.tar.gz
$ ls /home/username/
$ ./config --prefix=/home/username/openssl --openssldir=/home/username/openssl no-ssl2
$ cd openssl-1.1.1b
$ ./config --prefix=/home/username/openssl --openssldir=/home/username/openssl no-ssl2
$ make
$ make test
$ make install
$ cd ~
$ vim ./.bash_profile
$ source .bash_profile
$ which openssl
$ openssl version
$ cd Python-3.7.6
$ ./configure --prefix=$HOME/.local --with-ensurepip=yes CFLAGS="-I$HOME/openssl/include" LDFLAGS="-L$HOME/openssl/lib"
$ make
$ make install
$ source ~/.bash_profile
$ python3 -V

Tags:

Misc Example