40.4.1.1.1. Překlad a instalace avra 1.2.3a

avra je kvalitní assember kompatibilní s AVRASM1. Je již trochu starší a chybí v něm definice novějších procesorů. Ale i to je řešitelné. Pokud nepoužijeme direktivu .device musíme se sami ohlídat v používaných prostředích, paměti, instrukcích. Dalším problémem jsou inc soubory s definicemi pro jednotlivé procesory. Tyto jsou v novějších verzích vývojového prostředí pro AVR procesory pouze pro AVRASM2. V první chvíli jsem přišel s jednoduchým řešením které prověří čas a složitější programy. Inc soubory jsem zbavil všech # direktiv. Můžeme je například protlačit filtrem podle následující ukázky.

$ grep -v ^# orig/tn461def.inc >tn461def.inc

Jak jsem zmínil, avra ve verzi 1.2.3.1 nezná v direktivě .device novější procesory, jako je například výše uvedený ATtiny461. Můžeme si pomoci několika způsoby. Můžeme odstranit direktivy .device pro procesory s nimiž má avra problém. Můžeme požít podobné procesory. Například pro zmíněný ATtiny461 by připadal v úvahu ATtiny45. Druhou možností je použít novější verzi avra. Já jsem pro vlastní potřebu zasáhl do zdrojových kódů a v dobré víře dle svých nejlepších znalostí provedl úpravy. Tyto jsou k disopzici ke stažení například na Download

FIXME: Doplnit url a dát do něj zdroje/patch.

Jak jsem říkal, čas ukáže, jak mnoho budu lámat avru než zkusím jiný nástroj.

Postup překladu avra ze zdrojů. Stáhneme si zdroje a umístníme do adresáře /usr/local/download nebo jiného. Zdroje rozbalíme.

# cd /usr/local/src
	      # tar xjvf /usr/local/download/avra-1.2.3a-src.tar.bz2

Na mém systému, kde jsem překládal řadu programů mám všechny potřebné nastroje nainstlovány. Takže v tuhle chvíli nevím které všechny to jsou. Určite to budou programy/balíčky jako autoconf, automake samozřejmě gcc

# cd avra-1.2.3
# ./automake-compile

Toť vše. Tedy překladač máme a podáváme li se blíže do výpisu uvidíme že se nainstaloval jako /usr/local/bin/avra.

Licence Creative Commons
Elektronika a počítače, jejímž autorem je Radek Hnilica, podléhá licenci Creative Commons Uveďte autora-Nevyužívejte dílo komerčně-Zachovejte licenci 3.0 Česká republika .