Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to build Celestia to Android?

Tags:

c++

android

3d

Celestia is a gorgeous application for real-time 3D visualization of space, with a detailed model of the solar system, over 100,000 stars, more than 10,000 galaxies, and an extension mechanism for adding more objects.

It can run on windows, mac os, linux, freeBSD, then is there any Android ports of it? or how to build or port it to Android?

like image 466
ghost Avatar asked Mar 17 '12 07:03

ghost


Video Answer


1 Answers

Building on Spektre's comments and with a quick look at the , you'd need to:

  1. Get the code (either from SVN or a Git fork)
  2. Convert the automake build system to NDK
  3. replace all linux-dependent code with android NDK (e.g. opengl), or, better yet, add a new platform
  4. Build a new UI. Probably you can get some usage out of Qt, since it works on android

Some things to take into consideration:

  • Code base is about 200k lines, c/c++
  • There are some optional dependencies (e.g. lua) and some compulsory (?) dependencies (e.g. OpenGL libs)
  • You'd need to look carefully to various modules. "celengine" for example contains most of the OpenGL code.

IMHO, this is a hard thing to do (I did quite a few ports myself between OSes in the past years, albeit with smaller code bases). My approach would be rather to build a new thing (lib, app) using the data available, and add functionality and NDK components in time.

like image 130
Laur Ivan Avatar answered Oct 06 '22 18:10

Laur Ivan