¿Cómo puedo hacer que mi setup.py
pre-elimine y elimine el directorio de compilación?Limpieza del directorio de compilación en setup.py
Respuesta
Para pre-eliminación, simplemente borrarlo con distutils.dir_util.remove_tree
antes de llamar a la instalación.
Para la eliminación posterior, supongo que solo desea post-eliminar después de los comandos seleccionados. Subclase el comando respectivo, anule su método de ejecución (para invocar remove_tree después de llamar a la ejecución base) y pase el nuevo comando al diccionario de configuración de cmdclass.
¿Lo responde this? IIRC, necesitará usar la bandera --all
para deshacerse de cosas fuera del build/lib
:
python setup.py clean --all
Aquí es una respuesta que combina el enfoque programático de la respuesta de Martin con la funcionalidad de la respuesta de Matt (un clean
que se encarga de todas las posibles áreas de construcción):
from distutils.core import setup
from distutils.command.clean import clean
from distutils.command.install import install
class MyInstall(install):
# Calls the default run command, then deletes the build area
# (equivalent to "setup clean --all").
def run(self):
install.run(self)
c = clean(self.distribution)
c.all = True
c.finalize_options()
c.run()
if __name__ == '__main__':
setup(
name="myname",
...
cmdclass={'install': MyInstall}
)
Esto borra el directorio de construcción antes de instalar
python setup.py clean --all install
Pero de acuerdo a sus necesidades: Esto va a hacer antes y después de
python setup.py clean --all install clean --all
- 1. Incluir directorio vacío con python setup.py sdist
- 2. 'setup.py test' ubicación de instalación del huevo?
- 3. ¿Por qué "python setup.py sdist" crea "PROJECT-egg.info" no deseado en el directorio raíz del proyecto?
- 4. SCons Salida en el directorio de compilación
- 5. Cmake: directorio de compilación en incluir ruta
- 6. Cómo crear un evento personalizado de limpieza (post-limpieza) en Visual Studio 2008?
- 7. Manejo de la limpieza del estado gen_server
- 8. setup.py ejemplos?
- 9. Error de limpieza del proyecto Tomcat
- 10. Incluyendo datos estáticos en setup.py (setuptools)
- 11. Limpieza de carpetas con PowerShell
- 12. autotools y python setup.py
- 13. Limpieza de los datos del formulario en Django
- 14. Makefile: compilación en un árbol de directorio separado
- 15. CMake comandos de limpieza personalizados
- 16. Limpieza de código en netbeans
- 17. Buffers de limpieza en C
- 18. ¿Cómo se puede especificar o agregar un directorio a la ruta de búsqueda de Python.h durante la compilación/instalación de un módulo con setup.py?
- 19. py2exe setup.py con iconos
- 20. ¿Cómo puedo ejecutar un archivo Makefile en setup.py?
- 21. FizzBuzz limpieza
- 22. ¿Cómo funciona la limpieza del nodo DOM en d3?
- 23. Solución de hilo de limpieza en paramiko
- 24. intellij - código de limpieza
- 25. Cómo excluir archivos del comando de limpieza de Eclipse
- 26. setup.py y agregando archivo a/bin/
- 27. Eclipse Helios CDT: ignorar el directorio de compilación
- 28. ¿Cómo puedo configurar limpieza del código de ReSharper de ahorrar?
- 29. ¿Vistas de limpieza con backbone.js?
- 30. Multi-Threading - Estrategia de limpieza al final del programa
Parece que no todas las secuencias de comandos 'setup.py' admiten' clean'. Ejemplo: NumPy – kevinarpe