J'essayais d'installer des packages Python sur un système auquel j'ai récemment eu accès. J'essayais de profiter du répertoire relativement nouveau de Python par site-packages par utilisateur et de la nouvelle option --user
. (L'option n'est actuellement pas documentée , mais elle existe pour Python 2.6+; vous pouvez voir l'aide en exécutant python setup.py install --help
.)
Quand j'ai essayé de courir
python setup.py install --user
sur n'importe quel package que j'ai téléchargé, j'ai toujours l'erreur suivante:
error: can't combine user with with prefix/exec_prefix/home or install_(plat)base
L'erreur a été extrêmement déconcertant parce que, comme vous pouvez le voir, je ne fournissait pas la --prefix
, --exec-prefix
, --install-base
ou --install-platbase
drapeaux que les options de ligne de commande. J'ai perdu beaucoup de temps à essayer de comprendre quel était le problème. Je documente ma réponse ci-dessous, dans l'espoir d'épargner à une autre pauvre âme quelques heures de rasage de yak .
./configure --prefix=${HOME}
tout en ayant "user = 1" dans~/.pydistutils.cfg
. Dans ce cas, j'ai besoin de commenter temporairement "user = 1" afin que le processus d'installation puisse se terminer.