Ce document décrit le processus d'installation de l'utilitaire pip pour le langage INZA Python 2.7 64 bits, fourni dans le cadre du package IBM Netezza Analytics.
Avant de commencer
Assurez-vous que les produits suivants sont installés sur le système.
- IBM Netezza Analytics package de 11.0.x
- OpenSSL version 1.0.2x
Remarque :Les défauts de toute bibliothèque Python tierce ne sont pas abordés.
Les vulnérabilités ne peuvent être corrigées que par le tiers Python.
Cette procédure permet uniquement d'installer des bibliothèques tierces et n'est pas prise en charge par IBM
Procédure
- Installation de tuyaux :
L'utilitaire pip n'est pas fourni par défaut avec Python 2.7 Il doit être installé à la fois du côté de l'hôte et du côté du SPU. Utilisez les commandes pour effectuer l'installation du côté de l'hôte et du SPU, respectivement.
- Hôte : /nz/export/ae/languages/python/2.7/host64/bin/python
-m ensurepip --default-pip
- SPU : " /nz/export/ae/languages/python/2.7/spu64/bin/python -m ensurepip
--default-pip
Cela permet d'installer les utilitaires pip et pip2 à '/nz/export/ae/languages/python/2.7/host64/bin/ et '/nz/export/ae/languages/python/2.7/spu64/bin/, respectivement.
Note : L'utilitaire doit être installé pour le langage python de l'hôte et du SPU. L'utilitaire pip nécessite une bibliothèque SSL pour fonctionner correctement, qui n'est pas fournie avec les langages Python 2.7 host64 et spu64.
- Solution de contournement SSL :
The pip requiert SSL pour installer des bibliothèques tierces. La bibliothèque SSL n'est actuellement pas fournie avec spu64 et le langage Python 2.7 Cette étape fournit une solution de contournement pour accéder à la bibliothèque SSL à partir d'exécutables python.
- Copiez la bibliothèque jointe _ssl.so_host64 en tant que _ssl.so à l'emplacement '/nz/export/ae/languages/python/2.7/host64/lib/python-link/lib-dynload/ et _ssl.so_spu64 en tant que _ssl.so à l'emplacement '/nz/export/ae/languages/python/2.7/spu64/lib/python-link/lib-dynload/, respectivement.
Note : Les bibliothèques SSL fournies dépendent du système OpenSSL, dont la version doit être au minimum 1.0.2 Toute version inférieure à celle-ci n'est pas prise en charge.
- Confirmez la compatibilité du SSL en essayant d'importer la bibliothèque SSL en tant que "
import ssl à partir des exécutables " /nz/export/ae/languages/python/2.7/host64/bin/python et " /nz/export/ae/languages/python/2.7/spu64/bin/python
- /nz/export/ae/languages/python/2.7/host64/bin/python -c
import ssl
- /nz/export/ae/languages/python/2.7/spu64/bin/python -c
import ssl
Si une erreur se produit concernant la compatibilité des versions, vous devez mettre à jour les paquets OpenSSL à la version 1.0.2
- Installer des bibliothèques tierces :
La solution de contournement de l'étape 2 fournit la bibliothèque SSL nécessaire à Pip. Maintenant, utilisez la commande suivante pour installer toute bibliothèque tierce en utilisant pip :
- Hôte : /nz/export/ae/languages/python/2.7/host64/bin/pip install
<library_name>
- SPU : " /nz/export/ae/languages/python/2.7/spu64/bin/pip install
<library_name>
- Notez que chaque bibliothèque doit être installée à la fois sur l'hôte et sur le SPU. Toutes ces bibliothèques sont téléchargées et installées aux emplacements " /nz/export/ae/languages/python/2.7/host64/lib/python-link/site-packages et " /nz/export/ae/languages/python/2.7/spu64/lib/python-link/site-packages pour l'hôte et le SPU, respectivement. Veillez également à ce que la bibliothèque SSL soit renommée "
_ssl.so après l'avoir copiée à l'emplacement indiqué.
Python 3.6 est livré avec le logiciel pip par défaut, que vous pouvez trouver à l'emplacement suivant :
- Hôte : /nz/export/ae/languages/python/3.6/host64/bin/pip3
- SPU : " /nz/export/ae/languages/python/3.6/spu64/bin/pip3
Exemple
Voici un exemple d'exécution de pip.
/nz/export/ae/languages/python/2.7/spu64/bin/pip install camelcase
Collecting camelcase
Using cached https://files.pythonhosted.org/packages/24/54/6bc20bf371c1c78193e2e4179097a7b779e56f420d0da41222a3b7d87890/camelcase-0.2.tar.gz
Installing collected packages: camelcase
Running setup.py install for camelcase ... done
Successfully installed camelcase-0.2
You are using pip version 9.0.1, however version 20.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
/nz/export/ae/languages/python/3.6/spu64/bin/pip3 install camelcase
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting camelcase
Using cached https://files.pythonhosted.org/packages/24/54/6bc20bf371c1c78193e2e4179097a7b779e56f420d0da41222a3b7d87890/camelcase-0.2.tar.gz
Installing collected packages: camelcase
Running setup.py install for camelcase ... done
Successfully installed camelcase-0.2
You are using pip version 9.0.1, however version 20.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Etape suivante
Trouvez la bibliothèque SSL suivante pour python 2.7:
Pour la version 3.x, le fichier suivant doit être copié à :
- Hôte : /nz/export/ae/languages/python/3.6/host64/lib/python3.6/lib-dynload/
- SPU : " /nz/export/ae/languages/python/3.6/spu64/lib/python3.6/lib-dynload/
Conservez le nom du fichier tel quel, ne le modifiez pas. Une fois cela fait, exécutez les commandes suivantes :
- Exécuter " /nz/export/ae/languages/python/3.6/host64/bin/python3.6 -c "
import ssl
- Exécuter " /nz/export/ae/languages/python/3.6/spu64/bin/python3.6 -c "
import ssl