Au lieu de l' --targetoption ou de l' --install-optionsoption, j'ai trouvé que ce qui suit fonctionne bien (d'après la discussion sur un bug concernant cette chose à https://github.com/pypa/pip/issues/446 ):
PYTHONUSERBASE=/path/to/install/to pip install --user
(Ou définissez le PYTHONUSERBASErépertoire dans votre environnement avant d'exécuter la commande, en utilisant export PYTHONUSERBASE=/path/to/install/to)
Celui - ci utilise la très utile --useroption , mais dit pour faire les bin, lib, shareet d' autres répertoires que vous attendez dans un préfixe personnalisé plutôt que $HOME/.local.
Ensuite , vous pouvez ajouter à votre PATH, PYTHONPATHet d' autres variables comme vous le feriez dans un répertoire d'installation normale.
Notez que vous devrez peut-être également spécifier les options --upgradeet --ignore-installedsi des packages dont cela dépend nécessitent l'installation de versions plus récentes dans le PYTHONUSERBASErépertoire, pour remplacer les versions fournies par le système.
Un exemple complet:
PYTHONUSERBASE=/opt/mysterypackage-1.0/python-deps pip install --user --upgrade numpy scipy
..pour installer les versions les plus récentes scipyet numpypackage dans un répertoire que vous pouvez ensuite inclure dans votre PYTHONPATHcomme ça (en utilisant bash et pour python 2.6 sur CentOS 6 pour cet exemple):
export PYTHONPATH=/opt/mysterypackage-1.0/python-deps/lib64/python2.6/site-packages:$PYTHONPATH
export PATH=/opt/mysterypackage-1.0/python-deps/bin:$PATH
Utiliser virtualenv est toujours une solution meilleure et plus soignée!