2010-12-01 15 views
14

Actualmente estoy trabajando en una gran aplicación para Android que usa una gran cantidad de código C++. Se compila y funciona, hasta ahora todo bien.Android NDK incremental build

Por desgracia, cada vez que modificar algo en la estructura de mi fuente nativa (añadir/borrar/renombrar/mover un archivo), lo que sucede bastante a menudo, NDK-construir reconstruye toda la fuente, incluso los archivos intactos.

¿Alguien sabe cómo puedo configurar el NDK de Android para construir incrementalmente de alguna manera?

Gracias de antemano

+0

No tengo conocimiento de nada que haga esto. Me encantaría saber si hay una solución. He estado buscando uno –

Respuesta

11

que se hartó de la NDK sistema de construcción, lo estudiaron durante un rato, y escribieron mis propios archivos make. Esto no fue difícil.

Sin embargo, se me indicó que, al hacer esto, tendría que asumir la responsabilidad de rastrear futuros cambios en la plataforma, por ejemplo, si fuera necesario enviar archivos binarios para tipos de procesadores adicionales, tendría para modificar mi solución de construcción de cosecha propia para hacer eso también.

En otros contextos, a veces he tenido proyectos con dos sistemas de compilación, uno para experimentos rápidos, otro para compilaciones desplegables. El tiempo dedicado a actualizar tanto de vez en cuando se guardó muchas veces en la ganancia de velocidad para el trabajo diario. Siempre que tuviera que hacer una compilación real al menos una o dos semanas, las cosas nunca pasaban de ser inconsistentes (y ambas secuencias de comandos de compilación estaban en el sistema de control de revisiones, por lo que había que examinar la historia). Algo como esto podría hacerse con un archivo make personalizado para compilaciones de depuración y seguir usando el sistema de compilación NDK para paquetes desplegables.

(En un caso de hacer muchos experimentos al margen de lo que permite la plataforma, en realidad tuve mi archivo MAKE empujando la .so actualizada en el dispositivo y le di a mi aplicación uno de los botones de dejar de fumar desalentados, Podría reiniciarlo usando una biblioteca nativa actualizada sin siquiera tener que reconstruir y volver a instalar el apk)

+0

Si es posible, por favor, comparta más información sobre el proceso de creación de nuestro propio archivo MAKE y cómo manejar las macros específicas de Android, etc. – Midson

+2

@Midson - ejecute el script ndk make con la opción V = 1 para salida detallada. Copie el resultado en un editor y comience a dividirlo en categorías tradicionales para las variables de archivo MAKE. –