em::blocks - zkuste

Petr Labaj labaj na volny.cz
Sobota Listopad 1 18:46:28 CET 2014


| From: "Jaroslav Buchta" <jaroslav.buchta na hascomp.cz>
|
| Mozna jsem dite stesteny ale me to GDB at uz je primo s STLink nebo je 
| to nejake OOCD funguje naprosto dobre, navzdory tomu, ze na to neni ten 
| prikazovy radek.

To není o štěstí. To je tím, že Vy máte rád komplexní nástroje. No a Váš
počítač se to prostě naučil od Vás.
Já mám rád jednoduché nástroje (koncepce Unix/Linux - řetězení jednoúčelových
nástrojů místo jednoho kompexního). No a tak se to můj počítač ode mě
naučil. Věřím, že kdybych to samé dělal na Vašem PC, tak by to určitě
hladce fungovalo (a naopak). Stroje mají duši.    ;-)

| A k tomu nastaveni projektu  - je to celkem prehledny XML soubor, uz 
| prevadim projekty z C::B do E::B prostym zkopirovanim prislusnych sekci. 

No ale já nemusím nic kopírovat/editovat. Udělal jsem si Makefile, který
přeloží a slinkuje všechny *.c a *.S v adresáři "src", použije pro to includy
z adresáře "include" a slinkuje to podle loader-scriptu z adresáře "ld".
Všechny listingy a map-file uloží do adresáře "tmp" a výsledný program
pojmenuje jménem adresáře, ve kterém stojí.
Takže napsat nový "projekt" znamená vytvořit nebo nakopírovat adresář
s výše uvedenými 4 podadresáři, a umístit do něho tento neměnný Makefile
(v praxi tam ukládám jenom link na ten Makefile, stejně tak je tam jen link
na loader-script).
Vše je vždy na přesně definovaných místech, pokud vzniká nějaký pracovní
bordel (*.o atd) tak je to vždy jen v adresáři "tmp". V rootu projektu je jen
Makefile a program.elf.
Všechny cesty relativní (kromě pevných cest ke konstatním knihovnám), takže
se to dá kamkoli přesouvat a překládat naprosto stejně na Linuxu nebo Windows.
Kromě klasických "make" a "make clean" mám ještě "make clean_tmp", který
odstraní jen bordel, ale ponechá výsledný produkt a důležité listingy. To
používám po skončení práce před uložením projektu do archivu.
Makefile čte i některé externí parametry, takže můžu vynutit použití jiného
kompilátoru nebo jiné optimalizace.

PL



Další informace o konferenci Hw-list