## Download | Kompilácia

^ Download

V tejto časti popisujem, ako kompilovať a linkovať zdrojové kódy tak, aby ste vytvorili build ako command-line aplikáciu alebo pre web (cgi skript).

V princípe rozlišujeme kompiláciu pre nasledujúce dva účely:

1. binárka, ktorá bude generovať výstup do súborov (HTML), teda samostatná aplikácia (pre Windows alebo linux);
2. binárka, ktorá bude generovať výstup na štandardný výstup (stdout) za účelom použitia ako cgi skript pre webserver (napr. Apache pre Windows/Ruby alebo pre linux).

Obidva spôsoby sa riadia pomocou #define v súbore mysystem.h:

1. samostatná command-line aplikácia: MODEL_linux_commandline alebo MODEL_Windows_commandline;
2. cgi skript pre webserver: MODEL_linux alebo MODEL_Windows.

Samozrejme, ostatné je potrebné zapoznámkovať. Pre účely testovania a debugovania kľudne použite aj ďalšie možnosti (sú popísané aj priamo v súbore mysystem.h).

#### Postup kompilácie

V podstate postačí súboru urob dať práva (v linuxe chmod 755) a spustiť ho. Alebo sa inšpirujte priamo jeho obsahom: treba zlinkovať nasledujúce súbory:

    breviar.cpp
    dbzaltar.cpp
    liturgia.cpp
    mygetopt.cpp
    mylog.cpp
    myhpage.cpp
    myexpt.cpp
    cgiutils.cpp
    myconf.cpp
    mydefs.cpp
    mystring.cpp

Výsledkom bude požadovaná binárka, ktorú pomenujte podľa vlastného uváženia (pre webserver by mala mať príponu cgi) a prípadne jej nastavte práva na execute.

Ak máte akékoľvek pripomienky, vylepšenia, nápady alebo postrehy, pošlite ich prosím mailom.

#### Aký je rozdiel medzi „aplikáciou“ a „skriptom pre webserver“?

Keď webserver volá nejaký skript, ten mu pošle výstup na stdout. Preto všetok výstup ide na stdout. Naviac, prvé riadky MUSIA byť také, ktoré obsahujú Content-type, aby webserver vedel, čo má zobraziť (či ide o HTML súbor, alebo ide o filelisting, alebo ide o bitmapu, obrázok, pakovaný súbor a pod.).

Aplikácia (presnejšie, command-line samostatná binárka) okrem generovania jednotlivých stránok dokáže generovať modlitby pre viacero dní naraz použitím tzv. batch móde (dávkové spracovanie)

Posledná aktualizácia: 2008-12-18
© 1999-2019 Juraj Vidéky