====== Installer facilement des modules python ====== L'installation préalable de distributions complètes du type [[https://store.continuum.io/cshop/anaconda/|Anacaonda]], [[https://code.google.com/p/pythonxy/wiki/Downloads|Pythonxy]], Enthought ou ActivePython est préférable ! Ces installations peuvent d'ailleurs l'installation des outils comme setuptools, distutils, pip,... ===== Introduction ===== Des modules additionnels de Python peuvent être installés via des sites qui les proposent. Il s'agit de : * créateurs de programmes, librairies * firmes ou associations qui proposent des ensembles cohérents (comme [[http://www.sagemath.org/|Sage]], [[http://www.enthought.com/products/epd.php|Enthought]],...) * logithèques de systèmes l'exploitation (de distributions Linux comme Ubuntu par exemple) Ces modes d'installation de modules ne sont pas toujours satisfaisants : difficultés de trouver certains modules, ensembles reprenant des modules non souhaités, versions de modules générant des conflits,... aussi le site officiel de Python a créé un catalogue et des archives de librairies Python, imitant en cela les grands sites d'archives comme : * [[http://www.ctan.org/|LaTeX]], * [[http://www.cpan.org/|Perl]], * [[http://cran.r-project.org/|R]], * [[http://www.openjsan.org/|JavaScript]], * [[http://pearL'installation préalable de distributions complètes du type [[https://code.google.com/p/pythonxy/wiki/Downloads|Pythonxy]], Enthought ou ActivePython est préférable ! * [[https://pear.php.net/index.php|php]], * ... Ce grand répertoire se nomme [[http://pypi.python.org/pypi|PyPI]] (Python Package Index). Il reprend 112 860 paquets python (juillet 2017). Un programme nommé Pip permet de télécharger et ensuite installer des programmes ou librairies référencées dans le répertoire **Pypi**. Pour vérifier une installation existante, n'hésitez pas à exécuter les commandes suivantes : python --version python2 --version python3 --version pip --version pip2 --version pip3 --version virtualenv --version ==== Procédure sous Windows ==== ==== Procédure sous Linux ==== Sous Ubuntu, Debian et distributions dérivées, pour python (v2) et python3, au cas où pip ne serait pas installé : sudo apt-get install python-pip python3-pip Pour mettre à jour : sudo -H pip3 install --upgrade pip sudo -H pip2 install --upgrade pip ==== Procédure sous Mac ==== À écrire, cf. [[https://hackercodex.com/guide/python-development-environment-on-mac-osx/|ici]] ===== Utiliser Pip ===== C'est donc Pip qui va être utilisé pour installer des programmes et librairies. Par exemple, pour installer matplotlib, taper dans une fenêtre de commande : pip install matplotlib Attention, il est préférable d'utiliser les exécutables pour Windows proposés directement sur le site [[http://pypi.python.org/pypi|Pypi]], s'ils existent. La plupart des librairies devraient être installées de manière locale, à l'exception de certaines, comme virtualenv. Donc sous GNU/Linux, il ne faut pas utiliser le "sudo". Quelques commandes, remarques,... avec "nomlibrairie" comme nom de librairie, à remplacer : * mise à jour à la dernière version : pip install --upgrade nomlibrairie * désinstaller : pip uninstall nomlibrairie * version de pip : pip --version * information à propos de la librairie : pip show nomlibrairie * génère une liste de librairies installées en "requirements" : pip freeze > requirements.txt * installe à partir d'une liste de "requirements" : pip install -r requirements.txt * lister les librairies : pip list * lister les librairies dépassées et les nouvelles versions : pip list --outdated Pour plus d'information, consulter le [[https://pip.pypa.io/en/latest/reference/|Reference guide]]. ===== Virtualenv ===== venv, équivalent, est installé par défaut à partir de Python 3.3. Après activation d'un environnement virtuel, son nom est indiqué entre parenthèses devant le prompt. Installation : sudo apt-get install virtualenv sudo apt install virtualenvwrapper echo "source /usr/share/virtualenvwrapper/virtualenvwrapper.sh" >> ~/.bashrc Configuration : export WORKON_HOME=~/.virtualenvs mkdir $WORKON_HOME echo "export WORKON_HOME=$WORKON_HOME" >> ~/.bashrc echo "export PIP_VIRTUALENV_BASE=$WORKON_HOME" >> ~/.bashrc source ~/.bashrc Utilisation (exemples) : mkvirtualenv --python=/usr/bin/python3 test deactivate workon test which python deactivate rmvirtualenv test refs : * [[https://askubuntu.com/questions/244641/how-to-set-up-and-use-a-virtual-python-environment-in-ubuntu]] * [[https://stackoverflow.com/questions/16123459/virtualenvwrapper-and-python-3]] * [[http://sametmax.com/les-environnement-virtuels-python-virtualenv-et-virtualenvwrapper/]] * [https://docs.python.org/3/tutorial/venv.html] * [[http://python-guide-pt-br.readthedocs.io/en/latest/dev/virtualenvs/]] * [[https://virtualenvwrapper.readthedocs.io/en/latest/]] * [[http://apprendre-python.com/page-virtualenv-python-environnement-virtuel]] * À tester : [[https://www.opendatascience.com/blog/setup-a-python-virtual-machine-with-ubuntu/]] ===== Problèmes particuliers ===== ==== Upgrade de Matplotlib par pip sous Ubuntu 14.04 : ==== Passer via sudo (sinon erreurs) * [[https://mlbernauer.wordpress.com/2014/12/06/upgrading-from-matplotlib-1-3-1-to-1-4-1-in-ubuntu-14-04/]] * solution : * sudo apt-get install libfreetype6-dev * sudo pip install --upgrade matplotlib * Résultats : * Successfully installed cycler-0.9.0 matplotlib-1.5.1 numpy-1.10.4 pyparsing-2.0.7 python-dateutil-2.4.2 pytz-2015.7 six-1.10.0 ===== références ===== * [[http://coagul.org/drupal/publication/installer-facilement-modules-python]] * [[http://stackoverflow.com/questions/4750806/how-to-install-pip-on-windows]] * [[http://docs.python-guide.org/en/latest/starting/install/win/]] * [[https://zignar.net/2012/06/17/install-python-on-windows/]] * [[http://peak.telecommunity.com/DevCenter/EasyInstall]] * [[http://www.pip-installer.org/en/1.0.1/index.html]] * [[http://www.blog.pythonlibrary.org/2011/11/24/python-101-setting-up-python-on-windows/]] * [[http://python-packaging-user-guide.readthedocs.org/en/latest/installing/]] * [[https://pip.pypa.io/en/stable/|pip documentation]] * [[http://askubuntu.com/questions/431780/apt-get-install-vs-pip-install]] * [[http://kazhack.org/?post/2014/12/12/pip-gem-install-without-sudo]] (sudo or not sudo...) * [[http://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/]] (intro pip & virtualenv) * virtualenv : * [[http://docs.python-guide.org/en/latest/dev/virtualenvs/]] * [[http://chrisstrelioff.ws/sandbox/2014/09/04/virtualenv_and_virtualenvwrapper_on_ubuntu_14_04.html]] * [[http://www.sitepoint.com/virtual-environments-python-made-easy/]]