Neues von der Sternwarte: indi kompilieren und installieren

Was wollen wir nun also tun?

Wir haben drei Projekte, die wir für´s Teleskopieren verwenden wollen.

  • indi
  • astrometry.net
  • kstars

Den Quellcode dieser Projekte haben wir in jeweils eigene Verzeichnisse in unseren Arbeitsordner gecloned. Nun geht es darum, aus diesen Quellcodes ausführbare Programmdateien zu basteln.

Mit anderen Worten, es geht darum, das ganze Geraffel zu kompilieren.

Fangen wir an mit dem indi-Projekt. Der Quellcode dafür befindet sich, wie wir ja schon wissen, hier:

~/astrostuff/indi

Das indi-Projekt enthält vier Teilprojekte, die mich interessieren:

  • libindi (Basistreiber und Server-Client-Architektur)
  • indi-eqmod (Treiber für die AZ-EQ6-Montierung)
  • indi-asi (Treiber für die Astrokameras von ZWO)
  • indi-gphoto (Trieber für die DSLR)

Jedes dieser Teilprojekte werden wir getrennt kompilieren und den Ergebnissen eigene Verzeichnisse spendieren. Aus diesen Verzeichnissen wird dann installiert.

Zuerst ist ein Sammelordner für die „Kompilier-Ergebnisse“ notwendig. Die Übersichtlichkeit, ihr wisst schon..

mkdir -p ~/astrostuff/indi/build

In diesen Sammelordner kommen nun die Ergebnis-Ordner der Teilprojekte. Das machen wir gleich am Stück:

mkdir -p ~/astrostuff/indi/build/libindi &&\
mkdir -p ~/astrostuff/indi/build/indi-eqmod &&\
mkdir -p ~/astrostuff/indi/build/indi-asi &&\
mkdir -p ~/astrostuff/indi/build/indi-gphoto

Und nun kompilieren wir die Teilprojekte, eines nach dem anderen. Fangen wir mit libindi an.

libindi kompilieren und installieren

Wir wechseln in das Verzeichnis für libindi, das wir gerade erzeugt haben:

cd ~/astrostuff/indi/build/libindi

Und stoßen das Kompilieren an, das eigentlich zweiteilig ist. Zuerst erstellen wir build-files, in denen alles drinsteht, was mit welchen Dateien gemacht werden soll.

cmake -DCMAKE_BUILD_TYPE=Release ~/astrostuff/indi/libindi

An Hand der build-files werden nun unter anderem die ausführbaren Programmdateien erzeugt. In unserem Fall sind das zum Beispiel die Basistreiber.

Und da es so schön ist, werden die Ergebnisse der Kompilierung gleich noch auf der Festplatte installiert (mit Administratorrechten)

sudo make install

Weiter geht es mit den anderen Teilprojekten, allerdings auf Grund meiner inzwischen zur Genüge bekannten bekannten Bequemlichkeit in Kurzform:

indi-eqmod kompilieren und installieren

cd ~/astrostuff/indi/build/indi-eqmod &&\
cmake-DCMAKE_BUILD_TYPE=Release ~/astrostuff/indi/3rdparty/indi-eqmod &&\
sudo make install

indi-asi kompilieren und installieren

cd ~/astrostuff/indi/build/indi-asi &&\
cmake -DCMAKE_BUILD_TYPE=Release ~/astrostuff/indi/3rdparty/indi-asi &&\
sudo make install

indi-gphoto kompilieren und installieren

cd ~/astrostuff/indi/build/indi-gphoto &&\
cmake -DCMAKE_BUILD_TYPE=Release ~/astrostuff/indi/3rdparty/indi-gphoto &&\
sudo make install

Übrigens, das Kompilieren sieht im Terminal so ähnlich aus:

libindi-compile-2

Das war´s. Fertig!

Doch halt, eine Kleinigkeit hätte ich beinahe vergessen. Da ich eine Astrokamera von ZWO habe, brauche ich noch eine Regel, die einen Speicher im USB-Subsystem auf einen bestimmten Wert setzt, wenn die Kamera eingestöpselt wird. Ist nicht unbedingt notwendig, macht das Ganze aber weniger störanfällig und wendiger.

Solche Regeln sind einfache Text-Dateien, die unter anderem hier gespeichert sind:

/lib/udev/rules.d

Der Name dieser Regel-Datei lautet:

99-asi.rules

Die Regel befindet im Klartext im Quellcode von indi. Ich könnte sie also direkt nach „/lib/udev/rules.d“ kopieren.  Ich mach´s aber über den Kompilierweg.

Warum? Naja, weil es mir Spass macht. Und weil ich dabei nicht soviel denken muß. Bequemlicheit, ihr wisst schon… 🙂

mkdir -p ~/astrostuff/indi/build/asi-common &&\
cd ~/astrostuff/indi/build/asi-common &&\
cmake -DCMAKE_BUILD_TYPE=Release ~/astrostuff/indi/3rdparty/asi-common &&\
sudo make install

 

Das war´s jetzt aber endgültig mit dem indi-Projekt. Alles was ich daraus im Moment brauche, befindet sich nun in verwertbarer Form auf der Festplatte das Astro-Laptops. Wegen der udev-Regel ist noch ein System-Neustart notwendig. Dann kann es weiter gehen mit astrometry.net

Übrigens, das Kompilieren und Installieren von astrometry.net wird ein Abenteuer werden. Und ich liebe Abenteuer (wenn sie gut ausgehen…) 🙂

Stay tuned

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.