6.2. Bygning af bøgerne fra kildekode

Der er relativt få grunde til at bygge bøgerne selv fra kildekode. Her opsummerer vi et par af de årsager der kan være.

Hvis ikke du har et af ovennævnte behov, burde du kunne "nøjes" med de færdigbyggede bøger på cvs.linuxbog.dk, eller www.linuxbog.dk. Hvis du vil bygge bøgerne selv, bliver det i det følgende beskrevet hvordan dette gøres.

For at kunne bygge bøgerne, skal du have en del forskellige programmer installeret. Det drejer sig om værktøjer der kan oversætte sgml koden (som bøgerne er skrevet i) til de forskellige formater (html, pdf, ps, palm pilot, mv) som bøgerne kan oversættes til.

Fremgangsmåden for at bygge bøgerne er lidt forskellig, afhængigt af hvordan du har fået fat i kildeteksterne. Hvis du har fået CVS adgang til kildekoden, skal du starte med at læse afsnittet nedenfor kaldet "Adgang til kildekoden fra CVS". I det følgende beskrives hvordan en enkelt bog, downloadet som en tar.gz fil, oversættes.

Først skal du udpakke bogen, f.eks. med kommandoen

[tyge@hven ~]$ $tar zxvf linuxbog-applikationer-dist-*.tar.gz

Derefter skal du skifte til kataloget er der blevet oprettet, og konfigurere bogen:

[tyge@hven ~]$ cd applikationer
[tyge@hven ~]$ ./configure --help

Ved at skrive --help vil du få en oversigt over de argumenter configure kan tage. Som udgangspunkt burde det ikke være nødvendigt at anvende nogen argumenter, men der kan være situationer hvor det er ønskværdigt.

Du kan nu konfigurere bygning af bogen, med f.eks.

[tyge@hven ~]$ ./configure --enable-softlink

Herefter vil configure undersøge dit system for at finde ud af om du har de nødvendige værktøjer til at bygge bogen med. Hvis configure finder ud af at du mangler centrale værktøjer, vil den afbryde med en fejl. Det kan f.eks. være at du mangler programmet "jade" som kan læse sgml filer, eller programmet "jw" som er en frontend til jade. Disse programmer er altid krævet for overhovedet at kunne oversætte bøgerne. For de forskellige formater bøgerne skal oversættes til, kræves desuden nogle forskellige værktøjer. F.eks. kræves programmet "db2html" for at kunne lave en udgave af bøgerne i html format. Configure programmet vil ikke afbryde hvis disse værktøjer mangler, men blot konfigurere oversættelsen således at disse ikke kan bygges. Til slut vil configure udskrive en oversigt over hvilke formater der kan oversættes til. Det kan f.eks. se sådan her ud:

configure: Oversigt over hvilke moduler der kan laves
configure:  Kan SGML bygges    : ja
configure:  Kan PALM bygges    : nej
configure:  Kan PDF bygges     : ja
configure:  Kan HTML bygges    : ja
configure:  Kan PAKHTML bygges : ja

Hvis det format du gerne vil bygge til, ikke understøttes, kan du kigge i det configure har skrevet for at finde årsagen. Eksempelvis finder jeg følgende linie:

Hvis du mangler nogen værktøjer må du installere dem, og køre configure igen. Hvis du har vanskeligt ved at finde ud af hvorfor du ikke kan bygge et bestemt format, kan du kigge i filen "config.log" hvor configure skriver detaljeret information om hvad det foretager sig.

Når du har fået support for de formater du gerne vil have, kan du skrive f.eks.

[tyge@hven ~]$ make html

for at lave html udgaven. Eller, make pdf for at lave pdf udgaven, osv. Bemærk at palm formatet hedder palmpilot.