2010-06-16 16 views
5

En Tiger, utilicé una instalación de python personalizada para evaluar las versiones más nuevas y no tuve ningún problema con eso *. Ahora Snow Leopard es un poco más hasta a la fecha y por los buques por defecto conEn Mac OS X, ¿usa el pitón enviado o el suyo propio?

$ ls /System/Library/Frameworks/Python.framework/Versions/ 
2.3 2.5 2.6 @Current 

  • lo que podría considerarse la mejor práctica? Usando el pitón enviado con Mac OS X o una versión compilada personalizada en, digamos $HOME.
  • ¿Hay alguna ventaja/desventaja al usar una opción sobre la otra?

Mi disposición era bastante simple hasta el momento y se veía así: compilado personalizada Python en $HOME y una $PATH que mirar en $HOME/bin primero, y posteriormente utilizaría mi privada versión Python. También $PYTHONPATH señaló a esta instalación local. De esta forma, no necesité sudo -instalar paquetes- virtualenv se encargó del resto. Nota: Me gustó esta configuración, así que solo tengo curiosidad y pensé en preguntar en la mente de la colmena .

Respuesta

5

Supongo que depende de sus necesidades. Personalmente, utilizo la última versión para cualquier serie (2.5, 2.6, etc.) de MacPorts.

+2

+1 para macports – systempuntoout

0

Lo que hagas en tu máquina depende totalmente de ti. Si vas a implementar tu código en el de otras personas, diría que es claramente preferible utilizar la versión enviada a menos que realmente necesite la versión más nueva.

+1

no estoy de acuerdo. La mayoría del software python empaquetado envía python dentro del paquete, y esa es la forma correcta de hacerlo. Dios sabe lo que el usuario instala en su máquina. – unbeli

+1

@unbeli Si está distribuyendo una aplicación importante, OK. ¿Pero por unos pocos guiones? Exactamente cuántos intérpretes de Python necesita una máquina, de todos modos? Y, en términos más generales, ¿cómo tiene sentido * no * codificar el entorno de referencia si todo lo demás es igual? – walkytalky

+2

Bueno, las secuencias de comandos en realidad no se "implementan", por lo que no hay forma de agrupar Python. No hay una línea de base en la que pueda confiar aquí. Sé que apesta, pero así es la vida, nadie prometió que no va a ser una mierda;) – unbeli

1

El problema con el uso de la versión de Python que se incluye con su sistema operativo es que puede contener errores o verse limitado de otras maneras. Si instala Python desde Fink o MacPorts, tiene la libertad de actualizarlo.

Otro importante ventaja de la gestión de su propia versión de Python con un gestor de paquetes (Fink o MacPorts) es que ayudan mucho con el compilación de dependencias del módulo (por ejemplo, cuando se utiliza un módulo que depende compilado Código C). Por lo tanto, la instalación de módulos de Python es ciertamente más fácil si no utiliza el Python incluido con OS X. Este es un punto importante a considerar, antes de hacer su elección.

2

Compilo yo mismo porque esto me da la versión más nueva de 64 bits. Las versiones oficiales de OS X parecen ser solo de 32 bits. Solté MacPorts hace varios meses porque su sistema de dependencia y sus paquetes a menudo obsoletos eran demasiado molestos.

0

Estoy desenterrando este viejo tema.

No hay respuestas reales para crear su propia distro/framework python desde el origen y el paquete y empaquetarlo de manera correcta. Intenté compilarlo desde la fuente, vinculándolo con mi aplicación programada C, que usa Python 3 y funciona en mi computadora. Pero cuando lo muevo por el sistema de archivos (por ejemplo, a/tmp) tiene rutas codificadas en la compilación de python. Y no tengo idea de qué script/envoltura hacer.

Mi punto de enviar nuestra propia distro python es asegurarnos de que no haya extrañeza en el cambio de interpeter involucrado al enviar la aplicación y confiar en la instalación de OS python.

Tampoco está documentado en ninguna parte en los documentos de python.

ya me encontré con este post 4206511