<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.19394">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2 face="Arial CE">Proc lidi nepouzivaji Makefile? Protoze
spousta lidi ani nevi, co to je (tim ted zrovna</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">nemyslim vzorek lidi z hw.cz, i kdyz i tady se
obcas vyskytuji nazory, ze je vhodnejsi</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">pouzit </FONT><FONT size=2
face="Arial CE">predchystany example, nez se snazit problemtiku
nastudovat).</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">Kdyz se podivate do prakticky libovolneho fora
</FONT><FONT size=2 face="Arial CE">o programovani nejakeho
procesoru,</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">tak kazda druha otazka tam je "pod
Eclipse </FONT><FONT size=2 face="Arial CE">to chodi, ale pod mym XYZ to
nejde".</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">Nikdo z nich nepremysli nad tim, ze preklad
</FONT><FONT size=2 face="Arial CE">je veci kompilatoru, tedy
toolchainu,</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">a ze s tim ma barevna klikaci nadstavba
IDE </FONT><FONT size=2 face="Arial CE">spojitost jen
okrajovou.</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"></FONT> </DIV>
<DIV><FONT size=2 face="Arial CE">Konkretne:</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">- knihovny prekladam predem a delam z nich
jednu knihovnu (*.a)</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">- knihovny jsou ulozene v pevne definovanem
adresari, ktery je spolecny pro</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> vsechny projekty</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">- adresar projektu ma shodne jseno s
projektem, v nem jsou podadresare:</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> - src</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> - include</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> - ld</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> - tmp</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">- v adresari projektu je jen Makefile, vystup
"projekt.elf" a soubor s opisem hlasek</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> z prekladu "projekt.txt", vcetne vypisu
o delce code a data</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">- v podadresari tmp jsou *.obj, *,lst ke
kazdemu modulu, "projekt.map" a "projekt.dis",</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> coz je nejkompletnejsi mozny
disassembler vysledneho projektu, vcetne hexdumpu,</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> tedy veskera informace pro pripadne
hledani</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">- Makefile ma krome obvykleho "clean" jeste
"clean_tmp", ktery maze pracovni soubory,</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"> ale ponecha "projekt.elf" a <FONT
size=2 face="Arial CE">"projekt.txt".</FONT></FONT></DIV>
<DIV><FONT size=2 face="Arial CE"></FONT> </DIV>
<DIV><FONT size=2 face="Arial CE">Diky predkompilovanym knihovnam je build
projektu velmi rychly.</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">Na urovni systemu je pradnastavena
volba -j pro paralelni preklad. Mym cilem</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">vzdy je, aby jedno kolo preklad+link nikdy
netrvalo dele nez 2 sekundy (na Linuxu, </FONT><FONT size=2
face="Arial CE">kde</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">mi soucasne toolchainy, natr. pro STM32, chodi
vyrazne rychleji nez na Windows).</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">Pokud by to melo u hodne velkeho projektu
trvat dele, je treba se zamyslet a rozlozit to.</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">Knihovny pouzivam jen naprosto minimalne,
vetsinu veci si radeji napisu sam a vim,</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">co a jak tam je. A muzu to snadno preportovat
jinam.</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">Vyjimkou jsou hodne komplexni periferie jako
USB a Ethernet.</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">S verzovacimi SW jsem se nikdy neszil (coz
povazuji za svou chybu). Takze verzovani</FONT></DIV>
<DIV><FONT size=2 face="Arial CE">pomoci pojmenovanych *.zip.</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"></FONT> </DIV>
<DIV><FONT size=2 face="Arial CE">PL</FONT></DIV>
<DIV><FONT size=2 face="Arial CE"></FONT> </DIV>
<BLOCKQUOTE
style="BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; PADDING-RIGHT: 0px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="FONT: 10pt arial; BACKGROUND: #e4e4e4; font-color: black"><B>From:</B>
<A title=BuFran@seznam.cz href="mailto:BuFran@seznam.cz">František Burian</A>
</DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A title=hw-list@list.hw.cz
href="mailto:hw-list@list.hw.cz">hw-list@list.hw.cz</A> </DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Saturday, January 26, 2013 7:58
PM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> ARM a Makefile</DIV>
<DIV><FONT size=2 face="Arial CE"></FONT><FONT size=2
face="Arial CE"></FONT><BR></DIV>Zdravím osazenstvo,<BR><BR> Mám tu
záludné dotazy na sobotní večer. <BR><BR> Všechny example které tu
proběhly jsou nativní pro Code::Blocks. Chtěl bych se zeptat (čistě z
neznalosti) <BR>z jakých důvodů nikdo nevytváříte projekt jako Makefile.
Myslím že pro možnost kompilace pod různými OS <BR>(a že tu jsou i lidé z
Linuxových luhů a hájů) by byl Makefile lepší volbou. Zakládat nový projekt na
kterém v <BR>budoucnosti může pracovat více lidí jako Makefile, nebo jako
standardní C::B projekt ?<BR><BR> Druhý dotaz směřuje k zakládání
projektu - když bych chtěl od počátku založit projekt tak, aby jej snadno
<BR>chápali druzí, aby zkušení v něm dobře "četli", aby šel například
zkompilovat i bez Code::Blocks, jakým způsobem <BR>bych měl rozčlenit
adresářovou strukturu ? Rád bych věděl Vaše názory jak zakládáte své projekty,
případně <BR>jak členíte strukturu. Řekněme že se jedná o středně rozsáhlý
projekt, kde bude komunikace s PC, nějaké UI s <BR>"točítkama" pro uživatele,
nějaká matematika. Vše v rámci ARM mikrokontroleru (STM32F1 nebo STM32F4).
<BR><BR> Třetí dotaz směřuje též k založení a "znovupoužití" projektu
někým jiným - jedná se o stahování a instalaci <BR>periferních knihoven, ve
kterých jsou změny oproti originálu. Přikládat a verzovat tuto knihovnu
společně s <BR>projektem, nebo raději napsat uživateli postup odkud stáhnout a
co kde a jak přeplácnout a modifikovat v tom <BR>originálu. Já bych byl pro
první variantu, ještě nevím zdali to není rozpor s licencí (musím prověřit)
ale zdá se <BR>mi to přístupnější většímu počtu uživatelů. (na zprovoznění by
stačilo mít provozuschopný toolchain a jen <BR>stáhnout zdrojový kód z SVN).
Uvažujme situaci jeden projekt (tedy NE situaci kdy knihovnu využívá vícero
<BR>projektů)<BR><BR>Dík za tipy.<BR><BR>
Franta.<BR></BLOCKQUOTE></BODY></HTML>