¿Es posible compilar bibliotecas LLVM en android / ARM

Estoy fascinado por el lenguaje algebraico puro / funcional . El intérprete Pure utiliza el compilador LLVM JIT como backend.

Me gustaría compilar Pure para que funcione en Android (ARM). Pure tiene una dependencia del JV de LLVM. Así que necesito compilar la fuente de LLVM para que Pure funcione.

¿Es posible compilar fuentes LLVM para dispositivos Android (ARM)? Realmente parece que no hay información sobre esto en la web. Tal vez mis términos de búsqueda están equivocados. Buscar LLVM para Android no genera muchos éxitos positivos.

Ahora parece posible, el NDK ahora es compatible con Clang que utiliza LLVM. Así que tal vez se puede hacer para trabajar con cualquier lenguaje LLVM. AOSP debe darnos una idea de cómo se agregó el apoyo Clang. Vea el último Android NDK para más detalles sobre el soporte de Clang.

Android NDK, Revisión 8c (Noviembre de 2012)
Cambios importantes:
Se agregó el compilador Clang 3.1 al NDK. La compilación del compilador de GNU (GCC) 4.6 sigue siendo la predeterminada, por lo que debe habilitar explícitamente la opción de compilador Clang de la siguiente manera:
Para ndk-build, exporte NDK_TOOLCHAIN_VERSION = clang3.1 o agregue esta configuración de variable de entorno a Application.mk.
Para las versiones independientes, agregue –llvm-version = 3.1 a make-standalone-toolchain.sh y reemplace CC y CXX en su makefile con / bin / clang y / bin / clang ++. Vea STANDALONE-TOOLCHAIN.html para más detalles.
Nota: Esta función es experimental. Inténtalo e informa cualquier problema.

Mientras que seguramente puede compilar LLVM en ARM (es bastante trivial – sólo un sistema normal de configure + make), todavía no tienes suerte: JIT en ARM sigue trabajando en progreso, así que no esperaría que funcionara para todo No trivial.

Parece que el Android NDK ayudaría en esto, ya que uno de sus usos por su página de preguntas frecuentes es reutilizar código C / C ++.

Creo que shuld ver en la mezcla de LLVM + Android NDK (C + +).

Estoy pensando en el sistema de objetos dymanic de SmallTalk (*), y el uso de LLVM es muy interesante para la compilación dinámica perezosa en dispositivos Android.

Primero intenta que construyas algo como un pequeño sistema Buildroot / OpenWrt Linux (o construyes tu propio usando CLFS o mis scripts: https://github.com/ponyatov/L/tree/clock ) para dispositivos ARM como Raspberry Pi (es mi caso para las pruebas). Si obtuvo buenos resultados en esta variante, más tarde puede migrar al dispositivo Android en sí. Creo que necesitará un código de pegamento C ++ / NDK para adoptar LLVM / Pure core vs tiempo de ejecución de Android e interfaz gráfica de usuario. (**)

(*), Pero con mi propia sintaxis de lenguaje, lisp-como las capacidades funcionales para mutar todos los internos del sistema, parser / compilador marco integrado, y tal vez algunos conceptos básicos de álgebra computacional simbólica

(**) es Android Pi vivo?

Por lo que sé que no se puede construir LLVM para dispositivos ARM todavía.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.