7 votes

OS X Lion easy_install requiert sudo ... ?

Je suis sous OS X Lion et je souhaite configurer des environnements virtuels Python. Je veux utiliser virtualenvwrapper.

Quelqu'un peut-il confirmer que la bonne façon de procéder est d'installer les paquets via easy_install (et par la suite pip) est en utilisant sudo

Le contexte : pour installer virtaulenv je voulais utiliser pip, donc j'ai fait

$ easy_install pip
error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

    [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/test-easy-install-876.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /Library/Python/2.7/site-packages/

Perhaps your account does not have write access to this directory?  If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account.  If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.

For information on other options, you may wish to consult the
documentation at:

  http://peak.telecommunity.com/EasyInstall.html

Please make the appropriate changes for your system and try again.

il semble que la seule façon de faire fonctionner easy_install est de le faire en utilisant sudo. J'ai lu ailleurs que c'était une mauvaise idée (bien que je ne sache pas vraiment pourquoi).

Pour clarifier,

$ which python
/usr/bin/python

et c'est 2.7.1.

4voto

StormSlayer101 Points 11

Rendre /Library/Python/2.7/site-packages/ world-executable avec :

sudo chmod -R 755 /Library/Python/2.7/site-packages

a fonctionné pour moi.

1voto

idontwanttortfm Points 2092

Avant Lion, /Library/Python était par défaut accessible en écriture par l'utilisateur (à moins que vous n'ayez commencé à utiliser sudo easy_install une fois, après quoi les fichiers nouvellement créés ne pouvaient plus être écrits par l'utilisateur). Cela a changé avec Lion, bien que l'on ne sache pas exactement pourquoi. Donc, vous pouvez soit changer la propriété de /Library/Python ou ajouter sudo à tous easy_install actions.

Voir wiki homebrew pour plus de détails.

1voto

Nigel Spencer Points 560

Téléchargement de setuptools et l'installer à nouveau avec cette commande résoudra votre problème.

sudo sh setuptools-0.6c11-py2.7.egg --prefix=~ --install-dir=/Library/Python/2.7/site-packages/

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X