[cstex] LaTeX a Makefile

Zdenek Wagner zdenek.wagner at gmail.com
Mon Mar 26 14:31:29 CEST 2007


2007/3/26, David Nečas (Yeti) <yeti at physics.muni.cz>:
> On Mon, Mar 26, 2007 at 02:08:34PM +0200, Zdenek Wagner wrote:
> > 2007/3/26, Hana Skoumalova <Hana.Skoumalova at ff.cuni.cz>:
> > > Dobrý den,
> > >
> > > omlouvám se za mírně OT dotaz, ale skupina se mi jeví jako nejvhodnější.
> > >
> > Používáte stejný make jako autor? není make jako make a tenhle
> > makefile má trochu jinou syntaxi než to, na co jsem zvyklý. Je možné,
> > že Váš make tomu nerozumí, a proto použije implicitní pravidla.
>
> Ta syntaxe je normální a používají se jen základní
> kostrukce, mělo by to fungovat ve všech běžných
> implementacích make.
>
V nmake od IBM to bezpečně chodit nebude, protože bude vadit % a
pochopí se to jinak.

> > > Od jednoho kolegy jsme dostali hromadu latexových souborů a k nim
> > > Makefile, který z nich má vyrobit prezentaci. Nedaří se nám to ale makem
> > > zkompilovat, protože vždycky zafunguje implicitní pravidlo, které na ty
> > > zdrojáky poštve tex místo latexu. Příslušný kus Makefilu vypadá takto:
> > >
> > > %.dvi: %.tex $(SOURCE) $(SOURCE2)
> > >         latex $*
> > >         latex $*
> > >         bibtex $*
> > >         latex $*
> > >         bibtex $*
> > >         latex $*
> > >
> > > %.ps: %.dvi
> > >         dvips $*.dvi -o
> > >
> > >
> > > %.pdf: %.dvi
> > >         dvips -Plandscapeplus -Pwww $* -o
> > >         ps2pdf $*.ps
> > >
> > > Jenže když make začne vyrábět .dvi, zavolá tex:
> > >
> > > ......
> > >     Considering target file `hpsg-slides-present.dvi'.
> > >      File `hpsg-slides-present.dvi' does not exist.
> > >       Pruning file `hpsg-slides-present.tex'.
> > >      Finished prerequisites of target file `hpsg-slides-present.dvi'.
> > >     Must remake target `hpsg-slides-present.dvi'.
> > > tex hpsg-slides-present.tex
> > > ......
> > >
> > > Dají se tyhle implicitní pravidla nějak potlačit?
>
> Problém bude spíš v tom, že neexistuje některý ze souborů
> zmiňovaný v $(SOURCE) a $(SOURCE2).  make se nejprve pokusí
> použít explictní pravidla, ale když zjistí, že je nelze
> aplikovat (scházejí předpoklady), zkusí to s implicitními.
> V tom ladicím výpisu by to mělo být vidět.
>
> Yeti
>
> --
> http://gwyddion.net/
> _______________________________________________
> csTeX mailing list
> csTeX at cs.felk.cvut.cz
> http://lists.felk.cvut.cz/mailman/listinfo/cstex
>


-- 
Zdeněk Wagner
http://hroch486.icpf.cas.cz/wagner/
http://icebearsoft.euweb.cz




More information about the csTeX mailing list