«Le module ssl en Python n'est pas disponible» lors de l'installation du package avec pip3

123

J'ai installé Python 3.4 et Python 3.6 sur ma machine locale avec succès, mais je ne parviens pas à installer les packages avec pip3.

Lorsque j'exécute pip3 install <package>, j'obtiens l' erreur suivante liée au SSL :

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting <package>
  Could not fetch URL https://pypi.python.org/simple/<package>/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement <package> (from versions: )
No matching distribution found for <package>

Comment puis-je réparer mon installation Python3.x afin de pouvoir installer des packages avec pip install <package>?

Harukaze
la source
4
Avez-vous explicitement installé pip3 sur votre ubuntu avec la commande sudo apt-get install python3-pip??
Sidahmed
2
Veuillez essayer de pip3 install --upgrade pipvoir si vous recevez le même message ou non.
herry

Réponses:

93

Guide étape par étape pour installer Python 3.6 et pip3 dans Ubuntu

  1. Installez les packages nécessaires pour Python et ssl: $ sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

  2. Téléchargez et décompressez "Python-3.6.8.tar.xz" depuis https://www.python.org/ftp/python/ dans votre répertoire personnel.

  3. Ouvrez le terminal dans ce répertoire et exécutez: $ ./configure

  4. Construire et installer: $ sudo make && sudo make install

  5. Installez les packages avec: $ pip3 install package_name

Arsho
la source
4
A travaillé sur "Raspbian GNU / Linux 9 (stretch)"
Oktay
2
Je vous remercie! Je tournais en rond pour faire fonctionner python3 sur Ubuntu 14.04 jusqu'à ce que je trouve cette liste de commandes.
jerrylogansquare
2
Mon sauveur Ubuntu.
markroxor
6
Cela a fonctionné pour moi. Merci beaucoup. Une chose que je ne pouvais pas comprendre cependant, pourquoi ne pas commencer par l'étape 4 et seulement "make; make install" une fois?
Paraphiliac Ostrich
1
A travaillé dans Ubuntu Beaver. J'utilisais python3.7 et pip 19, toujours avec un problème SSL .....
eduardosufan
62

Si vous êtes sur Red Hat / CentOS:

# To allow for building python ssl libs
yum install openssl-devel
# Download the source of *any* python version
cd /usr/src
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
tar xf Python-3.6.2.tar.xz 
cd Python-3.6.2

# Configure the build w/ your installed libraries
./configure

# Install into /usr/local/bin/python3.6, don't overwrite global python bin
make altinstall
L'Aelfinn
la source
a également fonctionné pour python 2.7. il suffit d'ajouter make et make altinstall
Jabda
Si vous avez besoin de virtualenv, vous devez exécuter sudo /usr/local/bin/pip3.7 install virtualenv. Merci pour cette réponse!
technocrate
excellent, j'avais du mal à installer python 2.7.13 pour une image de docker héritée et j'avais besoin openssl-devel exécuterpython2.7 get-pip.py
Felipe
59

Si vous êtes sous Windows et utilisez anaconda, cela a fonctionné pour moi:

J'ai essayé beaucoup d'autres solutions qui n'ont pas fonctionné (Changements de variable PATH d'environnement ...)

Le problème peut être causé par des DLL dans le dossier Windows \ System32 (par exemple, libcrypto-1_1-x64.dll ou libssl-1_1-x64.dll ou autres) placés là par d'autres logiciels.

Le correctif installait openSSL à partir de https://slproweb.com/products/Win32OpenSSL.html qui remplace les dll par des versions plus récentes.

Juergi
la source
2
Je viens de l'installer. Dans la liste des programmes installés sur mon système, j'ai trois versions d'OpenSSL (deux versions 64 bits et une version 32 bits, bien que je sois sur un système 64 bits). Je ne suis pas au courant de les avoir tous installés, alors je les ai laissés là.
juergi
1
C'était la solution la plus simple que j'ai trouvée après de nombreuses recherches. Pip ne fonctionnait pas en raison d'une erreur OpenSSL. Spyder a également planté au lancement en raison d'une erreur "impossible d'importer le nom 'HTTPSHandler' à partir de 'urllib.request'". Cela a été isolé pour Windows 10 python 3 pour moi. Commentant, espérons-le, aider à lier la solution pour les gens qui recherchent sur Google, la plupart des meilleurs résultats étaient des solutions anciennes et complexes.
Dick McManus du
8
Si vous êtes sous Windows et utilisez Anaconda, utilisez simplement Anaconda Prompt au lieu de cmd pour exécuter "pip install". Aucune modification supplémentaire de DLL / SSL ne sera requise.
FatihAkici
1
@FatihAkici - Merci beaucoup. Ça m'a aidé.
Raju Penumatsa
2
J'étais sur le point de casser mon ordinateur, j'ai utilisé pycharm sur beaucoup de machines et de systèmes d'exploitation, mais sur cette nouvelle fenêtre, j'ai installé anaconda et il semble qu'il a cassé pip. J'ai navigué pendant environ 2 heures, merci beaucoup mon pote. <3
Benoit F
35

J'ai eu un problème similaire sur OSX 10.11 en raison de l'installation de Memcached qui a installé python 3.7 au-dessus de 3.6.

AVERTISSEMENT: pip est configuré avec des emplacements qui nécessitent TLS / SSL, cependant le module ssl en Python n'est pas disponible.

J'ai passé des heures à dissocier openssl, à réinstaller, à changer de chemin ... et rien n'y fit. Changer la version openssl d'une version plus ancienne a fait l'affaire:

brew switch openssl 1.0.2e

Je n'ai vu cette suggestion nulle part sur Internet. J'espère que ça sert quelqu'un.

dsomnus
la source
3
J'ai eu le même problème avec MacOS Catalina 10.5.4 (Beta), maintenant cela fonctionne. Je vous remercie!
Peter Rosemann
14
Pour moi, ça l'était brew switch openssl 1.0.2s. Mais c'était ça. Vous m'avez sauvé, merci!
antonio le
3
Essayer cela mais il n'arrête pas de me dire qu'openssl n'a pas de version "1.0.2e" dans la cave. openssl n'a pas de version "1.0.2s" dans la Cave.
James Parker
Antonio, James: quelle que soit l'ancienne version que vous avez. Ma cave avait 1.0.2e donc j'ai utilisé ceci. Je suis content que cela ait aidé.
dsomnus
4
Merci beaucoup! Pour moi, votre solution de passer à une ancienne version de opensslfonctionné: brew switch openssl 1.0.2t je suis sur Mac OS Catalina 10.15.3. J'espère que ça aide.
viraj.kulkarni
25

D'accord avec la réponse de mastaBlasta. A travaillé pour moi. J'ai rencontré le même problème que la description du sujet.

Environnement: MacOS Sierra. Et j'utilise Homebrew.

Ma solution:

  1. Réinstaller openssl par brew uninstall openssl; brew install openssl
  2. Selon les conseils donnés par Homebrew, procédez comme suit:

    echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
    export LDFLAGS="-L/usr/local/opt/openssl/lib"
    export CPPFLAGS="-I/usr/local/opt/openssl/include"
nathanyu
la source
3
Merci, le truc est brew uninstall openssl, brew install openssl. J'ai essayé brew reinstall opensslce qui n'a eu aucun effet. Mais la désinstallation / installation fonctionne!
Jeff Tian
6
devait courirbrew uninstall --ignore-dependencies openssl
elad silver
16

Dans Ubuntu, cela peut aider:

cd Python-3.6.2
./configure --with-ssl
make
sudo make install
tingtinghuang
la source
4
Pourquoi devons-nous construire python à partir des sources pour cela? n'y a-t-il pas une solution qui fonctionne avec les distributions python standard? J'espère naïvement que l'ajout de ce module serait possible sans remplacer le binaire python, dont nous ne connaissons pas toujours facilement l'emplacement source correspondant, sur un système en direct qui n'a pas été récemment installé.
matanster le
J'ai essayé, rien n'a changé
numéro d'utilisateur
10
Je reçois un avertissement indiquant que cette option n'est pas reconnue
ma3oun
J'ai dû ajouter plusieurs «sudo» à ces commandes, mais elles ont fonctionné là où d'autres réponses ont échoué!
Paco Abato
6

Rétrograder openssl a fonctionné pour moi,

brew switch openssl 1.0.2s
Nishant Nawarkhede
la source
1
travaillé pour moi, merci beaucoup
Mazhar Ahmed
5

Le problème est probablement causé par l'absence de bibliothèque.

Avant d'installer python 3.6, assurez-vous d'installer toutes les bibliothèques requises pour python.

$ sudo apt-get install build-essential checkinstall 
$ sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

Plus d'informations dans Comment installer Python 3.6.0 sur Ubuntu et LinuxMint

PengShaw
la source
5

Si vous êtes sur OSX et avez compilé python à partir des sources:

Installez openssl à l'aide de brew brew install openssl

Assurez-vous de suivre les instructions que l'infusion vous donne pour régler votre CPPFLAGSet LDFLAGS. Dans mon cas, j'utilise la [email protected]formule de brassage et j'ai besoin de ces 3 paramètres pour que le processus de construction python se lie correctement à ma bibliothèque SSL:

export LDFLAGS="-L/usr/local/opt/[email protected]/lib"
export CPPFLAGS="-I/usr/local/opt/[email protected]/include"
export PKG_CONFIG_PATH="/usr/local/opt/[email protected]/lib/pkgconfig"

En supposant que la bibliothèque est installée à cet emplacement.

mastaBlasta
la source
toujours le même problème
Gaurav Paliwal
Essayez de réinstaller pip
mastaBlasta
@GauravPaliwal, @mastaBlasta: Pour moi, passer à une ancienne version de openssltravaillé: brew switch openssl 1.0.2t je suis sous Mac OS Catalina 10.15.3. J'espère que ça aide.
viraj.kulkarni
5

J'ai rencontré le même problème sur Windows 10. Mon problème très spécifique est dû à mon installation d'Anaconda. J'ai installé Anaconda et sous le chemin Path/to/Anaconda3/, vient le python.exe. Ainsi, je n'ai pas du tout installé python car Anaconda inclut python. Lorsque vous utilisez pip pour installer des paquets, j'ai trouvé le même rapport d'erreur, pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available..

La solution était la suivante:

1) vous pouvez télécharger à nouveau python sur le site officiel ;

2) Accédez au répertoire où "Python 3.7 (64-bit).lnk"se trouve

3) import ssletexit()

4) tapez cmd, "Python 3.7 (64-bit).lnk" -m pip install tensorflowpar exemple.

Ici, vous êtes prêt.

Yanqi Huang
la source
Pas une solution, mais fait définitivement le travail. Au moins vous aide à installer deps manquants. Ce que j'ai réalisé sur ma machine locale, c'est que j'avais des entrées conflictuelles dans ma variable PATH pour python (c.-à-d. Anaconda 2.7 64 bits et Python 3.7 32 bits)
AP.
Aussi pour améliorer cette réponse, vous pouvez stocker le chemin absolu dans une variable et l'exécuter comme: cmd /c $py .\main.py( Powershell ) ou cmd /c %py% .\main.py( Dos ). Cela l'exécutera dans votre shell existant et peut être scripté
AP.
5

Si vous êtes sous Windows et que vous utilisez Anaconda, vous pouvez essayer d'exécuter la commande "pip install ..." dans Anaconda Prompt au lieu de cmd.exe, comme le suggère l'utilisateur willliu1995 ici . C'était la solution la plus rapide pour moi, qui ne nécessite pas l'installation de composants supplémentaires.

Papillon
la source
4

J'ai essayé BEAUCOUP de façons de résoudre ce problème et aucune n'a été résolue. Je suis actuellement sous Windows 10.

La seule chose qui a fonctionné était:

  • Désinstaller Anaconda
  • Désinstaller Python (j'utilisais la version 3.7.3)
  • Installez à nouveau Python (n'oubliez pas de cocher l'option pour ajouter automatiquement à PATH)

Ensuite, j'ai téléchargé toutes les bibliothèques dont j'avais besoin en utilisant PIP ... et j'ai travaillé!

Je ne sais pas pourquoi, ou si le problème était en quelque sorte lié à Anaconda.

João Ignacio
la source
3

pour les utilisateurs d'osx brew

mon problème est apparu lié à mon installation python et a été rapidement résolu en réinstallant python3 et pip. Je pense que cela a commencé à mal se comporter après une mise à jour du système d'exploitation mais qui sait (pour le moment, je suis sous Mac OS 10.14.6)

brew reinstall python3 --force
# setup pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
# installa pkg successfully 
pip install pandas
lfender6445
la source
Merci pour cette réponse! Dans mon cas, les problèmes ont commencé après la mise à jour vers Catalina (10.15.3), et j'ai trouvé que votre première étape brew reinstall python3 --forceétait suffisante: a pipfonctionné à nouveau après cela, je n'ai pas eu besoin de réinstaller pip.
PLL
3

Vous pouvez faire l'un de ces deux:

  1. Lors de l'installation d'Anaconda, sélectionnez l'option pour ajouter Anaconda au chemin .

ou

  1. Recherchez ces chemins (complets) dans votre dossier d'installation d'Anaconda et ajoutez-les à la variable d'environnement :

\Anaconda

\ Anaconda \ Bibliothèque \ mingw-w64 \ bin

\ Anaconda \ Bibliothèque \ usr \ bin

\ Anaconda \ Bibliothèque \ bin

\ Anaconda \ Scripts

\ anaconda \ Bibliothèque

\ anaconda \ condabin

Ajoutez les chemins ci-dessus à la variable système "Path" et il ne devrait plus afficher l'erreur :)

aymusbond
la source
1
Une alternative consiste à utiliser l '«invite anaconda» spécifique qui a ces variables d'environnement correctement configurées.
Tuula
2

J'avais le même problème et j'ai pu le résoudre avec les étapes suivantes:

sudo yum install -y libffi-devel
sudo yum install openssl-devel
cd /usr/src
sudo wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz
sudo tar xf Python-3.7.1.tar.xz
cd Python-3.7.1
sudo ./configure --enable-optimizations
# Install into /usr/local/bin/python3.7, don't overwrite global python bin
sudo make altinstall

selon les permanentes, vous n'aurez peut-être pas besoin de sudo.

Results:
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
Successfully installed pip-10.0.1 setuptools-39.0.1

devrait maintenant pouvoir exécuter

python3.7 -V 

et

pip3.7 -V

Lors de l'installation de packages:

pip3.7 install pandas

ou selon les perms, vous pouvez également ajouter le drapeau --user comme ceci:

pip3.7 install pandas --user
RubenD
la source
2

Le sslmodule est un wrapper TLS / SSL pour accéder au socket Operation Sytem (OS) ( Lib / ssl.py ). Ainsi, lorsque le sslmodule n'est pas disponible, il est probable que vous n'ayez pas de bibliothèques OS OpenSSL installées, ou que ces bibliothèques n'aient pas été trouvées lorsque vous installez Python. Supposons que ce soit un cas plus récent (c'est-à-dire: vous avez déjà installé OpenSSL, mais ils ne sont pas correctement liés lors de l'installation de Python).

Je suppose également que vous installez à partir des sources. Si vous installez à partir d'un fichier binaire (par exemple: fichier .exe Window) ou d'un package (Mac .dmg ou Ubuntu apt), vous ne pouvez pas faire grand-chose avec le processus d'installation.

Lors de l'étape de configuration de votre installation python, vous devez spécifier où l'OS OpenSSL sera utilisé pour la liaison:

# python 3.8 beta
./configure --with-openssl="your_OpenSSL root"

Alors, où trouverez-vous votre répertoire OpenSSL installé?

# ubuntu 
locate ssl.h | grep '/openssl/ssl.h'

/home/user/.linuxbrew/Cellar/openssl/1.0.2r/include/openssl/ssl.h
/home/user/envs/py37/include/openssl/ssl.h
/home/user/miniconda3/envs/py38b3/include/openssl/ssl.h
/home/user/miniconda3/include/openssl/ssl.h
/home/user/miniconda3/pkgs/openssl-1.0.2s-h7b6447c_0/include/openssl/ssl.h
/home/user/miniconda3/pkgs/openssl-1.1.1b-h7b6447c_1/include/openssl/ssl.h
/home/user/miniconda3/pkgs/openssl-1.1.1c-h7b6447c_1/include/openssl/ssl.h
/usr/include/openssl/ssl.h

Votre système peut être différent du mien, mais comme vous le voyez ici, j'ai de nombreuses bibliothèques OpenSL installées. Au moment d'écrire ces lignes, python 3.8 s'attend à openssl 1.0.2 ou 1.1:

Python nécessite une libssl compatible OpenSSL 1.0.2 ou 1.1 avec X509_VERIFY_PARAM_set1_host ().

Vous devez donc vérifier laquelle de ces bibliothèques installées vous pouvez utiliser pour la liaison, par exemple

/usr/bin/openssl version

OpenSSL 1.0.2g  1 Mar 2016
./configure --with-openssl="/usr"
make && make install

Vous devrez peut-être en essayer quelques-uns, ou en installer un nouveau, pour trouver la bibliothèque qui fonctionnerait pour votre Python et votre système d'exploitation.

bizi
la source
1

Dans mon cas avec l'utilisation de Mac, j'ai supprimé /Applications/Python 3.7. car j'avais déjà Python3.7 parbrew install python3 .

Mais c'était un déclencheur du message

pip est configuré avec des emplacements qui nécessitent TLS / SSL, mais le module ssl en Python n'est pas disponible.

Ce que j'ai fait dans ma situation

  1. J'ai de nouveau téléchargé le programme d' installation de macOS 64 bits et je l'ai installé.
  2. Double-cliquez /Applications/Python3.6/Install Certificates.commandet /Applications/Python3.6/Update Shell Profile.command.
  3. Redémarrez le Mac
  4. Et je ne suis pas sûr, mais peut-être contribué à réussir pip.conf. Voir échec de l'installation de pip .
Araya
la source
1

Je résous enfin ce problème. Voici le détail de mon env:
Version de Python à installer: 3.6.8
OS: Ubuntu 16.04.6 LTS
Accès root: Non

Certaines personnes suggèrent d'installer libssl-dev, mais cela n'a pas fonctionné pour moi. Je suis ce lien et je l'ai corrigé!
En bref, je télécharge, extraye, construis et installe OpenSSL (openssl-1.1.1b.tar.gz). Ensuite, je modifie le .bashrcfichier suivant ce lien .
Ensuite, je télécharge et extrait Python-3.6.8.tgz. J'édite Modules / Setup.dist pour modifier le chemin SSL (lignes autour du # 211). Je l'ai fait ./configure --prefix=$HOME/opt/python-3.6.8, makeet make install. Enfin, je modifie mon .bashrc. Notez que je n'inclus pas --enable-optimizationsdans ./configure.

donto
la source
0

Sur macos, configurer python 3.8.1 avec la commande ci-dessous résoudra le problème, je pense que cela fonctionnerait également sous Linux.

./configure --enable-optimizations --with-openssl=/usr/local/opt/openssl@1.1/

modifiez le paramètre dir en fonction de votre système.

user3857893
la source
0

Si vous êtes sur OSX et au cas où les autres solutions ne fonctionneraient pas pour vous (tout comme moi).

Vous pouvez essayer de désinstaller python3 et de mettre à niveau pip3

brew uninstall --ignore-dependencies python3
pip3 install --upgrade pip   

Cela a fonctionné pour moi;)

Inishchith
la source
0

(PAS sous Windows!)

Cela m'a fait arracher mes cheveux pendant une semaine, alors j'espère que cela aidera quelqu'un

J'ai tout essayé, sauf réinstaller Anaconda et / ou Jupyter.

Installer

  • AWS Linux
  • Anaconda 3-5.3.0 installé manuellement
  • Python3 (3.7) fonctionnait à l'intérieur d'anaconda (c.-à-d. ./anaconda3/bin/python )
  • il y avait aussi /usr/bin/pythonet /usr/bin/python3(mais ceux-ci n'étaient pas utilisés car la plupart du travail était effectué dans le terminal de Jupyter)

Réparer

Dans le terminal de Jupyter:

cp /usr/lib64/libssl.so.10 ./anaconda3/lib/libssl.so.1.0.0

cp /usr/lib64/libcrypto.so.10 ./anaconda3/lib/libcrypto.so.1.0.0

Qu'est-ce qui a déclenché cela?

Donc, tout cela fonctionnait jusqu'à ce que j'essaye de faire un conda install conda-forge

Je ne suis pas sûr de ce qui s'est passé, mais conda doit avoir mis opensslà jour la boîte (je suppose) donc après cela, tout s'est cassé.

Fondamentalement, à mon insu, conda avait mis à jour openssl, mais avait en quelque sorte supprimé les anciennes bibliothèques et les avait remplacées par libssl.so.1.1et libcrypto.so.1.1.

Python3, je suppose, a été compilé pour rechercher libssl.so.1.0.0

En fin de compte, la clé du diagnostic était la suivante:

python -c "import ssl; print (ssl.OPENSSL_VERSION)"

a donné l'indice library "libssl.so.1.0.0" not found

L'énorme hypothèse que j'ai faite est que la yumversion de ssl est la même que la condaversion, donc le simple fait de renommer l'objet partagé peut fonctionner, et c'est le cas.

Mon autre solution était de recompiler python, de réinstaller anaconda, etc., mais à la fin je suis content de ne pas en avoir eu besoin.

J'espère que cela vous aidera les gars.

Oz enneigé
la source
0

Dans le cas de l'utilisation pyenvpour gérer les installations python sur Mac OS Catalina, je devais d'abord installer opensslavec brew, puis après cette exécution pyenv install 3.7.8qui semblait créer l'installation de python en utilisant le opensslfrom homebrew (il était même indiqué en tant que tel dans la sortie de l'installation). pyenv global 3.7.8Et puis j'étais absent.

ProperBritannique
la source
0

J'ai pu résoudre ce problème en mettant à jour la version python dans ce fichier. pyenv: la version `3.6.5 'n'est pas installée (définie par /Users/taruntarun/.python-version) Bien que la dernière version soit installée, ma commande utilisait toujours l'ancienne version 3.6.5

Passer à la version 3.7.3

Tarun Singh
la source
-1

J'avais le même problème ces deux derniers jours et je ne l'ai résolu que maintenant.

J'avais essayé d'utiliser l' --trust-hostoption avec le DigiCert_High_Assurance_EV_Root_CA.pemne fonctionnait pas, je ne pouvais pas installer le module ssl (il indique qu'il ne peut pas être installé pour les versions python supérieures à 2.6), la définition de la $PIP_CERTvariable ne l'a pas corrigé non plus et j'ai eu libssl1.0.2et libssl1.0.0installé. Il convient également de mentionner que je n'avais pas de ~/.pip/pip.conffichier et que sa création n'a pas non plus résolu le bogue.

Ce qui l'a finalement résolu, a été d'installer à makenouveau python3.6 avec . Téléchargez le Python-3.6.0.tgz à partir du site Web, exécutez configureensuite make, make testet make install. J'espère que ça marche pour toi.

EC Lobo
la source
2
Désolé, mais j'ai dû voter contre pour cette raison, indiquant simplement de répéter les mêmes étapes qui ont causé cette erreur. Je ne sais pas comment vous vous attendez à exécuter les mêmes commandes sur la même source python et à obtenir des résultats différents!
Jamie Lindsey
-1

La documentation python est en fait très claire, et suivre les instructions a fait le travail alors que les autres réponses que j'ai trouvées ici ne résolvaient pas ce problème.

  1. tout d'abord, installez python 3.xx à partir des sources en utilisant, par exemple avec la version 3.6.2 https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz

  2. assurez-vous que openssl est installé en exécutant brew install openssl

  3. décompressez-le et déplacez-vous dans le répertoire python: tar xvzf Python-3.6.2.tar.xz && cd Python-3.6.2

  4. alors si la version python est <3.7, exécutez

CPPFLAGS="-I$(brew --prefix openssl)/include" \ LDFLAGS="-L$(brew --prefix openssl)/lib" \ ./configure --with-pydebug 5. enfin, exécutez make -s -j2( -sest le drapeau silencieux, -j2dit à votre machine d'utiliser 2 travaux)

pglaser
la source
j est le mnémonique pour «jobs» qui est le nombre de processus exécutés en parallèle exécutant la construction. Quant au drapeau s, il génère toujours des avertissements, mais sans le bruit supplémentaire des niveaux d'informations / de débogage. Ces indicateurs sont utilisés dans les instructions de la documentation python.
pglaser
-1

J'ai eu le même problème en essayant d'installer python3.7 sur une machine ubuntu14.04. Le problème était que j'avais des dossiers personnalisés dans mon PKG_CONFIG_PATH et dans mon LD_LIBRARY_PATH, ce qui empêchait le processus de construction de python de trouver les bibliothèques système openssl.

alors essayez de les effacer et voyez ce qui se passe:

export PKG_CONFIG_PATH=""
export LD_LIBRARY_PATH=""
Loki
la source
2
Cela gâcherait la journée de quelqu'un s'il avait des éléments utiles dans ces variables d'environnement
matanster
-1

Ok, la dernière réponse à cela, pour l'instant n'utilisez pas Python 3.8 , utilisez seulement 3.7 ou moins, car la plupart des bibliothèques ne parviennent pas à s'installer avec l'erreur ci-dessus

Ujju
la source
Autant que je sache, python utilise des packages sous-jacents du système d'exploitation. Des choses comme gcc, opensslet zlib. Il est donc important d'installer ces prérequis avant de compiler python, en particulier lorsqu'il est utilisé sous Linux.
stephen le
@ surfer190 J'utilise Windows, mais ce que vous avez dit pourrait être vrai pour les deux, je suppose
Ujju