r16 r13 para ndk 11c android arm llvm cross-compiling

android - r13 - ndk r16



¿Es posible compilar bibliotecas LLVM para Android/ARM? (5)

Me fascina el lenguaje algebraico / funcional puro . El intérprete de Pure utiliza el compilador JV de LLVM como su backend.

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

¿Es posible compilar la source LLVM para dispositivos Android (ARM)? Realmente parece que no hay información sobre esto en la web. Quizás mis términos de búsqueda estén equivocados. La búsqueda de Android LLVM tampoco trae muchos buenos éxitos.


Ahora parece posible, el NDK ahora es compatible con Clang que usa LLVM. Así que tal vez se puede hacer que funcione con cualquier lenguaje LLVM. AOSP debería darnos una idea de cómo agregaron el soporte de Clang. Vea el último NDK de Android para details 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 colección de compiladores GNU (GCC) 4.6 sigue siendo la predeterminada, por lo que debe habilitar explícitamente la opción del 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 compilaciones independientes, agregue --llvm-version = 3.1 a make-standalone-toolchain.sh y reemplace CC y CXX en su archivo make con / bin / clang y / bin / clang ++. Ver STANDALONE-TOOLCHAIN.html para más detalles.
Nota: Esta característica es experimental. Por favor, inténtalo y reporta cualquier problema.


Creo que deberíamos ver en la mezcla de LLVM + Android NDK (C ++).

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

Primero intente, debe construir algo como el pequeño sistema Buildroot / OpenWrt Linux (o construirlo con CLFS o mis scripts: https://github.com/ponyatov/L/tree/clock ) para dispositivos ARM como Raspberry Pi (es mi caso para las pruebas). Si obtiene buenos resultados en esta variante, más adelante podrá migrar al dispositivo Android. Creo que necesitará algo de código de pegamento C ++ / NDK para adoptar el tiempo de ejecución y la GUI de LLVM / Pure core vs Android. (**)

(*) pero con mi propia sintaxis de lenguaje, habilidades funcionales tipo lisp para mutar todos los componentes internos del sistema, marco integrado de analizador / compilador y tal vez algunos conceptos básicos del álgebra computacional simbólica

(**) ¿Android Pi está vivo?


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


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


Si bien es seguro que puede compilar LLVM en ARM (es bastante trivial, solo es un sistema de configuración + fabricación ordinario), aún no tiene suerte: JIT en ARM aún está en progreso, así que no espero que funcione para todo no trivial