web-dev-qa-db-fra.com

pip ne peut pas confirmer le certificat SSL: le module SSL n'est pas disponible

J'essaie d'installer RPi.GPIO pour Python 3.6 sur mon Raspberry Pi Zero W, mais d'une manière ou d'une autre, il ne se connectera pas au site Web python.org. J'ai installé pip pour 2.7, 3.0, et 3.6 installé, donc quand je vais faire quelque chose comme:

Sudo pip3.6 install RPi.GPIO

Je reçois cette erreur:

pi @ raspberrypi: ~ $ Sudo pip3.6 installe RPi.GPIO
pip est configuré avec des emplacements qui nécessitent TLS/SSL, cependant le module ssl dans Python n'est pas disponible.
Collecte de RPi.GPIO
Impossible de récupérer l'URL https://pypi.python.org/simple/rpi-gpio/ : un problème est survenu lors de la confirmation du certificat SSL: impossible de se connecter à l'URL HTTPS car le module SSL n'est pas disponible. - sauter
Impossible de trouver une version qui satisfait à l'exigence RPi.GPIO (à partir des versions:)
Aucune distribution correspondante trouvée pour RPi.GPIO

J'ai essayé Sudo apt-get install openssl et ainsi de suite, mais cela ne fonctionne toujours pas. Je peux accéder parfaitement au site Web sur mon ordinateur de bureau et mon téléphone, mais mon Raspberry Pi ne le sera pas du tout. Une idée de ce que je peux faire?

5
MortenMoulder

Avant d'installer python 3.6 vous devez installer les bibliothèques nécessaires.

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

Les avez-vous installés sur le PI?

Plus de détails ici

11
Colwin

Je rencontre le même problème , enfin je l'ai résolu en suivant

  1. Vérifiez si openssl-devel a été installé. Mon système d'exploitation est centos6 et la commande d'installation est la suivante

    yum install openssl-devel -y

  2. Modifier python fichier de configuration source

    vi/{yourpythonsource}/Modules/Configuration

. Décommentez une partie du contenu comme suit

# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c



# Socket module helper for SSL support; you must comment out the other 
# socket line above, and possibly edit the SSL variable: 
#SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

recompiler python.

cd /{yourpythonsource}
make && make install

Maintenant pip3 devrait être ok.

7
michaelfeng