¿Cómo construir Celestia a Android?

Celestia es una magnífica aplicación para la visualización 3D en tiempo real del espacio, con un modelo detallado del sistema solar, más de 100.000 estrellas, más de 10.000 galaxias, y un mecanismo de extensión para agregar más objetos.

Se puede ejecutar en Windows, Mac OS, Linux, FreeBSD, entonces hay algún puerto Android de la misma? O cómo construir o portar a Android?

Basándose en los comentarios de Spektre y con un rápido vistazo a la, tendrías que:

  1. Obtenga el código (ya sea de SVN o un tenedor de Git )
  2. Convertir el sistema de construcción de automake en NDK
  3. Reemplazar todo el código dependiente de linux con android NDK (por ejemplo, opengl), o, mejor aún, añadir una nueva plataforma
  4. Construir una nueva interfaz de usuario. Probablemente se puede obtener algo de uso de Qt, ya que funciona en android

Algunas cosas a tener en cuenta:

  • La base de código es alrededor de 200k líneas, c / c ++
  • Hay algunas dependencias opcionales (por ejemplo, lua) y algunas dependencias obligatorias (por ejemplo, librerías OpenGL)
  • Usted tendría que mirar cuidadosamente a varios módulos. "Celengine", por ejemplo, contiene la mayor parte del código OpenGL.

IMHO, esto es una cosa difícil de hacer (hice bastantes puertos yo mismo entre OSes en los últimos años, aunque con bases de código más pequeñas). Mi enfoque sería más bien construir una nueva cosa (lib, app) utilizando los datos disponibles, y agregar funcionalidad y componentes NDK en el tiempo.

  • Android NDK Exception failed: dlopen failed: no se puede localizar el símbolo "_ZN7Tangram11setPositionEdd" referenciado por "libtangram.so"
  • Utilizar C ++ con Android ndk / jni
  • Java Lang UnsupportedClassVersion Error en Xamarin Studio
  • Android NDK STL c ++ _ compartido con resultados LIBCXX_FORCE_REBUILD en std :: stringstream NOP
  • MQTT vs. XMPP ¿Qué debo elegir?
  • Android JNI nativo C función llamada mata actividad
  • Opencv C + + crear objeto Mat de android NV21 buffer de datos de imagen
  • Utilizar una clase simple de C ++ en Android NDK
  • Qt Android: Al presionar "Hecho" no oculta el teclado
  • Desarrollo de juegos para Android en C #
  • Set / Get Java List <> del código C
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.