Esto ha llegado a algunas pocas veces en las listas de correo cx_FreezeMover todo el DLL y PYD a una subcarpeta con cx_Freeze
(ver
cx_Freeze and moving files around
Creating fewer files when freezing a Python application
cx_freeze python single file? )
y me parece que debería ser una solución simple, pero no puedo ver cómo comenzar.
Tengo una aplicación de Python que depende de scipy, wxpython, numpy y un montón de otros paquetes que tienen MUCHAS bibliotecas vinculadas dinámicamente. La carpeta principal ejecutable se llena de archivos PYD y DLL y es difícil incluso encontrar el ejecutable entre todos los archivos. Mis usuarios no son especialmente expertos en informática, por lo que la claridad es muy importante.
No necesito un solo ejecutable como teóricamente puede ser generado por bbfreeze. Me gusta cómo funciona el archivo distutils setup.py con cx_Freeze y de todos los modos cx_Freeze es bastante brillante.
Todo lo que quiero es una forma de limpiar la carpeta principal ejecutable. Me encantaría mover manualmente los archivos DLL a la carpeta freeze_libs o algo así y luego interferir con la ruta de carga de la biblioteca compartida para ayudarlo a encontrar las bibliotecas dinámicas, si eso es posible. O algo así.
Gracias
Eche un vistazo a [ConsoleSetLibPath] (https://bitbucket.org/anthony_tuininga/cx_freeze/src/default/cx_Freeze/initscripts/ConsoleSetLibPath.py) initscript. Debería ser posible ajustar eso para buscar bibliotecas en una subcarpeta. –
¿Cómo se usa ese script? Parece muy prometedor, pero no veo cómo integrarlo. – ibell
Si está utilizando un script setup.py, especifique una opción 'init_script' para' build_exe' ([docs] (http://cx-freeze.readthedocs.org/en/latest/distutils.html # build-exe)). O si está utilizando el comando 'cxfreeze', hay un [--init-script flag] (http://cx-freeze.readthedocs.org/en/latest/script.html#cmdoption--init-script) . –