(py36venv) vagrant @ pvagrant-dev-vm:/vagrant/venvs $ pip3 installer pep8
pip est configuré avec les emplacements qui nécessitent TLS/SSL, mais le module ssl de Python n'est pas disponible.
La collecte de pep8 n'a pas pu récupérer l'URL https://pypi.python.org/simple/pep8/ : 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 répondant à l'exigence pep8 (à partir des versions:) Aucune distribution correspondante trouvée pour pep8
Informations générales - Tentative de déplacement vers python 3.6.
Installé python3.6 en utilisant les commandes ci-dessous:
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
tar -xvf Python-3.6.0.tgz
cd Python-3.6.0
./ configure --enable-optimizations
make -j8 Sudo make altinstall python3.6
Créé virtualenv par:
python3.6 -m venv py36venv
source py36venv/bin/activate
J'ai essayé d'installer pep8
(py36venv) pip3 installe pep8
pip est configuré avec les emplacements qui requièrent TLS/SSL, mais le module ssl de Python n'est pas disponible. Collecte de pep8
Impossible de récupérer l'URL https://pypi.python.org/simple/pep8/ : 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. - skipping Impossible de trouver une version qui réponde à l'exigence pep8 (à partir des versions:) Aucune distribution correspondante trouvée pour pep8.
J'ai suivi les étapes ci-dessous pour l'installation de python3.6 dans Ubuntu 14.04 et l'installation de virtualenv pip fonctionne bien.
Installation de Python 3.6:
Sudo apt-get install python3-dev libffi-dev libssl-dev
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
tar xvf Python-3.6.0.tgz
cd Python-3.6.0
./configure --enable-optimizations
make -j8
Sudo make altinstall
python3.6
Si vous voyez l'erreur suivante -
zipimport.ZipImportError: impossible de décompresser les données; zlib indisponible make: *** [altinstall] Erreur 1
essayer:
Sudo apt-get install zlib1g-dev
Validation:
Créez virtualenv dans python3.6:
python3.6 -m venv testenv
source testenv/bin/activate
pip install pep8
en utilisant pip:
(testenv) vagrant@pvagrant-dev-vm:~$ pip install pep8
*Collecting pep8
Downloading pep8-1.7.0-py2.py3-none-any.whl (41kB)
100% |████████████████████████████████| 51kB 4.1MB/s
Installing collected packages: pep8
Successfully installed pep8-1.7.0*
(testenv) vagrant@pvagrant-dev-vm:~$ pip list
pep8 (1.7.0)
pip (9.0.1)
setuptools (28.8.0)
Je suis tombé sur le même problème lorsque j'ai essayé de créer un environnement virtuel utilisant python3.6.0. Voici ma solution pour Mac OS X 10.12.2 (le commentaire Py_minion était assez proche):
J'ai créé l'environnement en procédant comme suit: téléchargement de python3.6.0 en cours d'exécution
./configure --prefix=<some_path>`
make
make install
mkvirtualenv --python=<some_path/bin/python3.6> foo
Donc, fondamentalement, semblable à: https://stackoverflow.com/a/11301911/128609
Une indication si vous avez le même problème que moi serait une ligne similaire lorsque vous exécutez make
The necessary bits to build these optional modules were not found: _ssl
brew install openssl
brew unlink openssl && brew link openssl --force
Vous pouvez trouver ces fichiers dans le répertoire de la version Python téléchargée.
Commenter et, si nécessaire, modifier les lignes 209 à 211 (je devais changer la variable SSL en mon emplacement openssl).
SSL=/usr/local/opt/openssl <---- THIS DEPENDS ON YOUR INSTALLATION
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto
Etant donné que c’était l’emplacement d’openssl
export CFLAGS="-I$(brew --prefix openssl)/include"
export LDFLAGS="-L$(brew --prefix openssl)/lib"
Fonctionnement
./configure --prefix=<some_path>`
make
make install
mkvirtualenv --python=<some_path/bin/python3.6> foo
a encore fait le tour pour moi
En cours d'exécution make m'a rapporté dans la sortie Shell:
The necessary bits to build these optional modules were not found:
_bz2 _dbm _gdbm
_sqlite3 _ssl _tkinter
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
Ce qui a résolu le problème dans mon cas (Linux Mint 18.1, openssl déjà installé) était en train de modifier setup.py dans le dossier Python-3.6.0 en y ajoutant le chemin où l’installation openssl a placé le fichier ssl.h de mon système dans (/usr/include/openssl/ssl.h). Voici la section dans laquelle j'ai ajouté la ligne '/ usr/include':
# Detect SSL support for the socket module (via _ssl)
search_for_ssl_incs_in = [
'/usr/local/ssl/include/',
'/usr/contrib/ssl/include/',
'/usr/include/'
]
ssl_incs = find_file('openssl/ssl.h', inc_dirs,
search_for_ssl_incs_in
)
J'ai rencontré la même erreur lors de la construction de Python 3.6.1 à partir de la source sous CentOS 7. Pour CentOS7, je devais d'abord:
Sudo yum install openssl-dev
Ensuite:
./configure --enable-optimizations
make altinstall
Maintenant pip3.6
fonctionne :-)
J'ai résolu ce problème sur Ubuntu-16.04.1. Vous devez d’abord installer les bibliothèques nécessaires. Pour installer un terminal ouvert (Ctrl+Alt+T), puis tapez;
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
Après cela, allez dans le répertoire où votre fichier python est ensuite reconfiguré et réinstallé python3.6.
cd /opt/Python3.6/
./configure
make
Sudo make install
NOTE
Si vous avez installé Python3.6 via ppa, réinstallez-le à nouveau;
Sudo apt-get install python3.6
Maintenant, vous devriez pouvoir utiliser pip3.6
Un script complet peut être trouvé HERE
Pour RHEL/CentOS
Sudo yum -y install gcc gcc-c++ zlib zlib-devel libffi-devel openssl-devel wget
Pour Ubuntu/Debian
Sudo apt-get -y install build-essential python-dev python-setuptools python-pip python-smbus libncursesw5-dev libgdbm-dev libc6-dev zlib1g-dev libsqlite3-dev tk-dev libssl-dev openssl libffi-dev wget
Modifier pour la version de python que vous voulez
cd /var/tmp Sudo wget https://www.python.org/ftp/python/3.x.x/Python-x.x.x.tgz Sudo tar xf Python-3.*.tgz cd Python-3*
Sudo ./configure --enable-optimizations --enable-shared --prefix=/usr/local Sudo make && make altinstall
Supprimer la bibliothèque partagée de symboles de débogage peut accélérer l'exécution lors de l'exécution de scripts parallèles.
Sudo make && make altinstall Sudo strip /usr/local/lib/libpython3.7m.so.1.0 Sudo echo 'export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib' >> /etc/profile.d/python.sh Sudo echo 'export PATH=${PATH}:~/usr/local/bin/' >> /etc/profile.d/python.sh Sudo echo '/usr/local/lib' >> /etc/ld.so.conf Sudo ldconfig