avra 1.3.0 kompilieren
Avra
ist ein Open
Source Assembler-Programm für die Mikrocontroller der Atmel AVR RISC
Familie. Da mich das Thema Mikrocontroller wieder gepackt habe, habe ich
den ganzen dazugehörigen Krempel (Evaluations-Board, Programmer, ...)
hervorgeholt und die notwendige Software auf meinen Computer wieder
eingerichtet. In den kommenden Tagen werde ich hier auch ein kleines
Einsteiger-Tutorial posten, welches die absoluten Basics darstellt.
Leider ist die avra Version, die auch aktuelle Linux-Distros, wie bspw.
mein Fedora 18 anbieten (Version 1.2.3), schon etwas angestaubt. So
unterstützt dieses avra noch nicht den ATtiny13-Controller, mit denen
ich in Zukunft aber was machen wollte. Glücklicherweise bietet die avra
Projektseite eine aktuellere Version 1.3.0 (die ist aber auch schon
wieder von 2010!), die u.a. diesen Controller unterstützt. Diese Version
kann man sich (nur) als Quellcode herunterladen, um es auf seinem System
der Wahl zu installieren. Das war zumindest bei mir mit kleineren
Hindernissen verbunden. Letztlich habe ich es hinbekommen. Wie ich das
ging, möchte ich im Folgenden Beschreiben beschreiben.
- Zunächst holen wir uns wie gesagt das Archiv mit dem Quellcode und den Build-Utilities von hier .
- Jetzt öffnen wir ein Terminalfensterchen, wechseln in das Verzeichnis der Downloaddatei und entpacken das Archiv mit 'tar -xjvf avra-1.3.0.tar.bz2'.
- Anschließend steigen wir in das angelegte Verzeichnis ab mit 'cd avra-1.3.0'. Es schadet bestimmt nicht, einen Blick in die Textdateien INSTALL und README zu werfen.
- Jetzt müssen wir in das Verzeichnis mit den Source-Dateien (Quellcode) wechseln, das ist src/.
-
Wenn wir jetzt nach der Anleitung in der Datei INSTALL
vorgehen und ein './configure' eingeben, bricht die Installation mit
der Meldung ab, daß die Datei install.sh nicht gefunden werden konnte.
Was hier genau falsch ist, weiß ich nicht. Aber
hier
habe ich gefunden, daß man in einem solchen Fall das Problem
dadurch beheben kann, daß man Reconfiguration mit dem Befehl 'autoreconf -f -i
-Wall,no-obsolete' durchführt. Bei mir sieht die Ausgabe wie
folgt aus:
$ autoreconf -f -i -Wall,no-obsoleteOffensichtlich fehlen ihm noch ein paar Dateien - also geben wir sie ihm! Im gleichen Verzeichnis führt Ihr nacheinander folgende Befehle aus:
configure.in:3: installing './install-sh'
configure.in:3: installing './missing'
Makefile.am: installing './INSTALL'
Makefile.am: error: required file './NEWS' not found
Makefile.am: error: required file './README' not found
Makefile.am: error: required file './AUTHORS' not found
Makefile.am: error: required file './ChangeLog' not found
Makefile.am: installing './COPYING' using GNU General Public License v3 file
Makefile.am: Consider adding the COPYING file to the version control system
Makefile.am: for your code, to avoid questions about which license your project uses
Makefile.am: installing './depcomp'
autoreconf: automake failed with exit status: 1$ touch NEWSDas legt im Verzeichnis src/ die fehlenden Dateien an, so daß das Programm automake in den folgenden Schritten nicht meckert. Der Rest ist Standard.
$ ln -s ../README README
$ ln -s ../AUTHORS AUTHORS
$ touch ChangeLog
-
Führe nun die beiden folgenden Befehle aus:
$ make
$ sudo make install - Jetzt sollte das Programm avra installiert sein. Leider funktionieren die mit avra mitgelieferten Include-Files nicht. Eine Lösung dazu habe ich aber hier in einem gesonderten Artikel beschrieben, auf den ich verweisen möchte.
Viel Spaß beim Programmieren!