easy_install - python pip setuptools
¿Por qué easy_install extrae algunos huevos de python y no otros? (2)
Buscando en mi /usr/local/lib/python.../dist-package directory, tengo directorios .egg
y archivos .egg
.
¿Por qué el instalador elige paquetes adicionales para el directorio .egg
y deja otros archivos con extensiones .egg
?
No puedo explicar por qué algunos huevos están comprimidos (los archivos) y otros son directorios, pero puedo ofrecer esto: si odias los huevos comprimidos (como yo), pon esto en la sección [easy_install]
de tus ~/.pydistutils.cfg
:
zip_ok = false
Si el paquete solo contiene el código de Python puro, puede permanecer como un archivo egg. El intérprete de Python puede cargar los módulos de Python directamente desde el huevo. Si el paquete contiene módulos escritos en C u otros datos, entonces el huevo debe extraerse para que se pueda acceder a los módulos C y / o los datos. Ese es el comportamiento predeterminado de los paquetes, creo. Las versiones más nuevas de Python podrían cargar módulos C desde archivos egg; No estoy seguro de esa parte.
El creador del paquete también puede indicar específicamente al instalador que descomprima el paquete, pasando zip_safe = False
a setup()
en su setup.py
.
Finalmente, la persona que realiza la instalación puede indicarle a easy_install que descomprima los huevos explícitamente pasándoles la opción -Z o configurando zip_ok = false
en el archivo pydistutils.cfg.