2012-06-07 20 views
8

¿Existe una guía definitiva sobre cómo instalar Homebrew's Python correctamente, junto con pip, virtualenv, virtualenvwrapper, etc.?Homebrew Python y escribir en /Library/Python/2.7/site-packages/?

He leído las páginas siguientes:

https://github.com/mxcl/homebrew/wiki/Homebrew-and-Python
http://osxastrotricks.wordpress.com/2012/05/02/python-setup-with-homebrew/
http://skipperkongen.dk/2011/11/13/installing-django-in-virtual-environment-on-mac/
http://www.thisisthegreenroom.com/2011/installing-python-numpy-scipy-matplotlib-and-ipython-on-lion/
http://youshoulddoityourself.blogspot.com.au/2010/11/test.html

tengo OSX 10.8 DP3 (Mountain Lion), y he instalado la línea de comandos XCode Herramientas.

También instalé XQuartz también, por las dudas (10.8 no lo proporciona).

Entonces me encontré:

brew install python --universal --framework 

que añade lo siguiente a mi ~/.bash_profile:

export PATH="/usr/local/bin:/usr/local/share/python:${PATH}" 

Entonces me encontré:

sudo easy_install pip 

que parecía funcionar.

que comprobar dónde PIP está instalado:

Victors-MacBook-Pro:~ victorhooi$ which pip 
/usr/local/bin/pip 

Sin embargo, cuando intento instalar paquetes pip, me sale un error que se queja de no poder escribir en /Library/Python/2.7/site-packages:

running install_lib 

creating /Library/Python/2.7/site-packages/yolk 

error: could not create '/Library/Python/2.7/site-packages/yolk': Permission denied 

---------------------------------------- 
Command /usr/bin/python -c "import setuptools;__file__='/Users/victorhooi/build/yolk/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /var/folders/gg/m37t1rkx4zj7z54ls487jfc40000gn/T/pip-ap7LSB-record/install-record.txt failed with error code 1 in /Users/victorhooi/build/yolk 
Storing complete log in /Users/victorhooi/Library/Logs/pip.log 

Mi entendimiento es que Python de Homebrew instalaría en él es poseer site-packages, y yo no tendría que hacer chown de raro en todo el árbol de archivos para que las cosas funcionen?

Saludos, Victor

+0

Estoy teniendo el mismo problema después de una nueva instalación de León de montaña. Tenía una pregunta similar (http://stackoverflow.com/q/11423301/153865). Lo cual me contesté a mí mismo. Hay una sección en mi pregunta para alterar los enlaces simbólicos en/System para apuntar a los directorios de preparación, pero eso parece un truco. Espero que alguien responda tu pregunta. –

Respuesta

2

Por favor, como alguien que ha sido exactamente dónde se encuentra, empezar a usar entornos virtuales en primer lugar, a continuación, pip y el resto. Son increíbles y resolverán este y muchos problemas futuros.

+0

Huh, espera, estoy usando virtualenvs * confuso *. ¿Pensé que los mencioné en la primera línea? Mi configuración normal es usar easy_install para instalar pip, luego uso pip para instalar virtualenv/virtualenvwrapper. Por lo general, también incluyo yema de huevo, para que pueda ver qué está instalado. – victorhooi

+1

Pruebe easy_install> virtualenv> pip> yema. Active un venv después de instalarlo. – nathancahill

10

Mientras tanto, pitón de homebrew ha evolucionado:

  • Python instalado a través de cerveza ya no intenta escribir en /Library/Python.
  • Homebrew's Python ahora siempre usa sus propios paquetes de sitio.
  • pip (y distribuir) se instala automáticamente.
  • La opción "--framework" no es necesaria. Homebrew está por defecto ahora.
  • XQuartz es necesario (desafortunadamente) porque los encabezados Tk enlazan a los encabezados X11.

Su RUTA en .bashrc es correcta (y aún se necesita).

+0

Supongamos que no me importa Tk. ¿Hay alguna manera de no instalar X11 en ese caso? – bwinton

+0

Pronto habrá. Ver [ese problema] (https://github.com/mxcl/homebrew/issues/14989). –

+1

¿Ese problema que archivé? Sí, lo he estado siguiendo. :) (¡Y gracias por su trabajo en él, por cierto!) – bwinton

-1

Ahora que hay Mountain Lion 10.8.2 y tuve una instalación legacy de Python 2.7 de Lion, las cosas simplemente no funcionaron. Cualquier cosa que intenté, Python quería acceder a/Library/.. No es bueno. La solución más fácil es brew uninstall python y luego brew install python Eso resuelve casi todos los problemas relacionados con Python con homebrew en ML.