Wenn ich hier von meinem täglichen Abenteuern mit Linux berichte, gehen die meistens gut aus. Heute ist das nur eingeschränkt so. Weil ich mit einem Android-Gerät gearbeitet habe, musste ich das adb-Tool installieren. Das kann ich kompiliert herunterladen und einfach einsetzen. Ich wollte es aber lieber selbst kompilieren. Immerhin ist adb Teil des Android Open-Source-Projekts.

Der Quelltext von adb ist frei verfügbar und steht unter der Apache-2-Lizenz. Das Herunterladen des Quelltexts war der einfache Teil.

Schwierig wurde es, als ich versucht habe, adb zu kompilieren. Es gibt kein Linux-Makefile, sondern nur eine Android.mk-Datei1, mit der mein Linux nichts anfangen kann. Einfach mal make adb eintippen funktioniert nicht und selbst das sonst so geschwätzige Internet ist verdächtig still. Ich solle Android einfach komplett kompilieren (nach einem Quelltext-Download von vermutlich mehreren Gigabytes und einigen Stunden Kompilierzeit).

Das Geheimnis scheint das Makefile zu sein. Es gibt ein paar Vorlagen für Linux-Makefiles, mit denen man adb kompilieren können soll (z.B. hier und hier), aber ich verstehe lieber, was da passieren muss, statt irgendwelche kryptischen Makefiles zu kopieren. Deshalb gefällt mir dieser generische Ansatz, weil ich ihn zumindest in der Theorie nachvollziehen kann. In einer ruhigen Stunde ausprobieren.

Das hier stimmt jedenfalls:

building the binaries can be tricky

  1. android.mk ist der weiterführende Lesehinweise für heute.