Anzeige:
Ergebnis 1 bis 7 von 7

Thema: Makefile erstellen

  1. #1
    Registrierter Benutzer
    Registriert seit
    03.04.2007
    Ort
    Wrestedt
    Beiträge
    987

    Makefile erstellen

    Hallo liebe User,

    um mir etwas Arbeit und Zeit zu sparen habe ich ein kleines Dokument mit dem Titel makefile geschrieben:
    Code:
    	pdflatex test.tex
    	biber pdflatex
    	pdflatex test.tex
    	pdflatex test.tex
    	pdflatex test.tex
    ich kopiere es in den Ordner mit den Tex-Dateien und mache es ausführbar (Linux). Leider bekomme ich es nicht hin auch das Stichwortverzeichnis damit zu erstellen. Ein Glossar kann ich mit
    Code:
    makeglossaries test
    erstellen.

    Kann mir jemand auf die Sprünge helfen?

    Vielen Dank

    Gruß

    Martin

    EDIT: Ich habe die Lösung selbst gefunden:
    Code:
    makeindex test.idx
    Geändert von nixversteh (04-09-2015 um 08:03 Uhr) Grund: Änderung
    Der aus Büchern erworbene Reichtum fremder Erfahrung heißt Gelehrsamkeit. Eigene Erfahrung ist Weisheit. Das kleinste Kapital von dieser ist mehrt wert, als Millionen von jener.

    Gotthold Ephraim Lessing

  2. #2
    Registrierter Benutzer
    Registriert seit
    09.12.2005
    Beiträge
    1.327
    makefile würde ich die Datei übrigens nicht nennen. Der Name deutet nämlich an, dass man das Programm make für den build-Prozess verwendet. Daher empfehle ich eher einen Namen wie build.sh o. ä.

  3. #3
    Registrierter Benutzer
    Registriert seit
    03.04.2007
    Ort
    Wrestedt
    Beiträge
    987
    Zitat Zitat von klops Beitrag anzeigen
    makefile würde ich die Datei übrigens nicht nennen. Der Name deutet nämlich an, dass man das Programm make für den build-Prozess verwendet. Daher empfehle ich eher einen Namen wie build.sh o. ä.
    Hallo klops,

    ja, du hast recht, wäre korrekt.

    Danke

    Gruß

    Martin
    Der aus Büchern erworbene Reichtum fremder Erfahrung heißt Gelehrsamkeit. Eigene Erfahrung ist Weisheit. Das kleinste Kapital von dieser ist mehrt wert, als Millionen von jener.

    Gotthold Ephraim Lessing

  4. #4
    Registrierter Benutzer
    Registriert seit
    20.07.2013
    Beiträge
    193
    Ich benutze mit Vorliebe latexmk für Automatismen.

  5. #5
    Registrierter Benutzer
    Registriert seit
    03.04.2007
    Ort
    Wrestedt
    Beiträge
    987
    Zitat Zitat von Johannes_B Beitrag anzeigen
    Ich benutze mit Vorliebe latexmk für Automatismen.
    Hallo Johannes,

    ich werde es mir ansehen, vielen Dank für den Hinweis.

    Gruß

    Martin
    Der aus Büchern erworbene Reichtum fremder Erfahrung heißt Gelehrsamkeit. Eigene Erfahrung ist Weisheit. Das kleinste Kapital von dieser ist mehrt wert, als Millionen von jener.

    Gotthold Ephraim Lessing

  6. #6
    Registrierter Benutzer
    Registriert seit
    20.02.2006
    Beiträge
    185

    Wink

    Ich kopier mal zur allgemeinen Verwendung ein Makefile hier rein, welches ich seit Jahren in immer in ähnlicher Form verwende:
    Code:
    .PHONY: handbuch all
    
    # Variables
    temp-dir = Temp
    ok = [OK]
    
    # Functions
    tempfile = ${temp-dir}/${1}
    xelatexmk = @latexmk -xelatex -shell-escape --output-directory=${temp-dir} ${1}
    pdflatexmk = @latexmk -pdf -shell-escape --output-directory=${temp-dir} ${1}
    copy = cp $(call tempfile,$1).pdf PDF
    
    all:
    	$(MAKE) handbuch
    
    handbuch:
    	$(call xelatexmk,Handbuch)
    	@echo ${ok}
    	$(call copy,Handbuch)
    	@echo ${ok}
    Auf der Hauptebene liegt die LaTeX Datei und das Makefile. In meinem Fall ist das die Datei "Handbuch.tex". Dort steht nur das Gerüst, welches mit "\input{...}" auf Dateien in den Ordnern "Einstellungen" und "Inhalt" zugreift. Daneben gibt es noch einen Ordner "Temp", in dem die temporären Dateien angelegt werden und "PDF", in den das fertige .pdf kopiert wird.

    Aufgerufen wird das Makefile von der Hauptebene aus mit "make handbuch" (oder einfach nur "make", da es hier kein anderes mögliches Ziel gibt). Intern wird die selbst definierte Funktion "xelatexmk" aufgerufen, die einen latexmk-Durchlauf mit der Option "-xelatex" startet. Falls ich lieber pdflatex nutzen möchte, habe ich hierzu auch eine Funktion definiert. Die echo-Zeilen geben einfach nur "ok" auf der Kommandozeile aus. Die copy-Funktion kopiert das fertige .pdf an seinen Platz.

    Möge dieses Makefile jemandem nützlich sein...

    PS: Voraussetzung ist, dass man das Programm "make" auch tatsächlich installiert hat. Auf dem Mac geht das z.B. mit den XCode-Kommandozeilentools. Diese kann man separat herunterladen und benötigt nicht die komplette XCode-Umgebung.

  7. #7
    Registrierter Benutzer
    Registriert seit
    03.04.2007
    Ort
    Wrestedt
    Beiträge
    987
    Hallo Tim77,

    klappt, vielen Dank.

    Gruß

    Martin
    Der aus Büchern erworbene Reichtum fremder Erfahrung heißt Gelehrsamkeit. Eigene Erfahrung ist Weisheit. Das kleinste Kapital von dieser ist mehrt wert, als Millionen von jener.

    Gotthold Ephraim Lessing

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •