goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 101644
Top-Poster: Johannes_B (5071)

Wir begrüßen unseren neuesten Benutzer Johannes2020.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Label definiert, trotzdem Warnung "Reference ... undefi

 

dave
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.09.2010, 16:41     Titel: Label definiert, trotzdem Warnung "Reference ... undefi
  Antworten mit Zitat      
Moin.

Ich sitze gerade an einem Latex-Projekt, das aus mehreren tex-Dateien besteht, da mehrere Leute gleichzeitig dran arbeiten, d.h. es gibt eine main-Datei, in der die externen Dateien per \include{} eingebunden werden.

Das Problem ist nun folgendes: anscheinend kann (pdf)Latex nicht alle Labels erkennen. Bei der externen Datei werden die ersten drei Labels erkannt, alle weiteren jedoch nicht. Wenn ich nun z.B. das Bild referiere, so erscheint - trotz existentem Label - der Fehler "Reference ... undefined". Merkwürdigerweise verschwindet der Fehler, sobald ich den Inhalt der externen Datei direkt in die main-Datei reinkopiere. Aber die Arbeit schreibt vor, dass ich die Dateien externalisieren muss.

Ich benutze Texmaker mit MikTex 2.8 auf Windows 7. Ich habe auch schon probiert, das ganze mit TexWorks zu kompilieren, aber der Fehler bleibt der gleiche.

Die zwei tex-Dateien (zu einem Test abgeändert) und die log-Datei sind in den folgenden Links gespeichert.

test_main.tex
test_02.tex
test_main.log
test_main.aux
test_02.aux

Ich bedanke mich bereits im Vorraus für jede Hilfe.

P.S.: ich finde es klasse, dass auch Gäste hier schreiben können

Mfg,
Samiel

Mechanicus
Forum-Guru
Forum-Guru

Beiträge: 322
Anmeldedatum: 08.10.08
Wohnort: Hamburg
Version: Tex Live 2011 / Ubuntu
     Beitrag Verfasst am: 19.09.2010, 16:57     Titel:
  Antworten mit Zitat      
Hi,

die Dokumentenklasse ist ebenfalls unbekannt. Ich habe zudem dein Minimalbeispiel etwas gekürzt:

Code
\RequirePackage{filecontents}
\begin{filecontents*}{test_02.tex}
\section{Lorem ipsum}
\lipsum[1]
\begin{equation}
\label{eq:th01}
|\psi\rangle = \frac{1}{2} \cdot \left( |+\rangle_1 \cdot |-\rangle_2 + |-\rangle_1 \cdot |+\rangle_2 \right) ,
\end{equation}
\lipsum[1]
\begin{equation}
    \label{eq:th02}
    S = |E(\vec{a},\vec{b})-E(\vec{a},\vec{b'})|+|E(\vec{a'},\vec{b})+E(\vec{a'},\vec{b'})| \leq 2,
\end{equation}

siehe \eqref{eq:th01} und \eqref{eq:th02}
\end{filecontents*}
\documentclass[11pt,a4paper,twoside,aps,prl,twocolumn,groupedaddress]{article}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{lipsum}
\begin{document}
\include{test_02}
\end{document}


Gruß
Marco

EDIT: in der log gibt es nur den Fehler, dass das Bild nicht existiert.
_________________

Personalführung ist die Kunst der Vorgesetzten den Untergebenen so schnell über den Tisch zu ziehen, dass er die Reibungshitze als Nestwärme empfindet.
Private Nachricht senden Benutzer-Profile anzeigen

dave
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.09.2010, 17:57     Titel:
  Antworten mit Zitat      
Wie meinst du das, dass die Dokumentklasse unbekannt ist? In der log-Datei steht, welche Dokumentklasse (revtex4-1 vom revtex4-Packet) benutzt wird, und es werden dazu keine Warnungen oder Fehler aufgezeigt. Weiters ist in der Zeile 691 der log-Datei beschrieben:
LaTeX Warning: Reference `fig:th01' on page 2 undefined on input line 35.

Und genau dieses Label findet man test_02.tex Datei, trotzdem kommt die Warnung "undefined".

Deswegen kann ich deine Antwort nicht nachvollziehen. Ich habe auch dein Minimalbeispiel ausgeführt, aber es erscheint mir nicht gerade sinnvoll, da ich ja geschrieben habe, dass die ersten drei Labels ordnungsgemäß erkannt werden.

Mfg,
dave

Mechanicus
Forum-Guru
Forum-Guru

Beiträge: 322
Anmeldedatum: 08.10.08
Wohnort: Hamburg
Version: Tex Live 2011 / Ubuntu
     Beitrag Verfasst am: 19.09.2010, 18:43     Titel:
  Antworten mit Zitat      
dave hat Folgendes geschrieben:
Wie meinst du das, dass die Dokumentklasse unbekannt ist?

Ich dachte, ich hätte diese nicht. Sorry.


dave hat Folgendes geschrieben:

Und genau dieses Label findet man test_02.tex Datei, trotzdem kommt die Warnung "undefined".

Bei der Verwendung von include, findet es gar kein label bei mir. Nur wenn ich input verwende:
Code
\RequirePackage{filecontents}
\begin{filecontents*}{test_02.tex}
\section{Lorem ipsum}
\lipsum[1]
\begin{equation}
\label{eq:th01}
|\psi\rangle = \frac{1}{2} \cdot \left( |+\rangle_1 \cdot |-\rangle_2 + |-\rangle_1 \cdot |+\rangle_2 \right) ,
\end{equation}
\lipsum[1]
\begin{equation}
    \label{eq:th02}
    S = |E(\vec{a},\vec{b})-E(\vec{a},\vec{b'})|+|E(\vec{a'},\vec{b})+E(\vec{a'},\vec{b'})| \leq 2,
\end{equation}

siehe \ref{eq:th01} und \ref{eq:th02}
\begin{figure}[!ht]
\rule{2cm}{2cm}
\caption{foo} \label{bild}
\end{figure}

\ref{bild}
\end{filecontents*}
\documentclass[11pt,a4paper,twoside,aps,prl,twocolumn,groupedaddress]{revtex4-1}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{lipsum}

\begin{document}
\include{test_02}
%\input{test_02}
\end{document}


Die Dokumentation lässt sich aber auch nicht richtig aus. (zumindest habe ich nichts gesehen, was wiederum nichts zu bedeuten hat Smile )

Gruß
Marco
_________________

Personalführung ist die Kunst der Vorgesetzten den Untergebenen so schnell über den Tisch zu ziehen, dass er die Reibungshitze als Nestwärme empfindet.
Private Nachricht senden Benutzer-Profile anzeigen

dave
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.09.2010, 19:22     Titel:
  Antworten mit Zitat      
Sehr seltsam ... eigentlich dürfte zwischen \include und \input kaum ein Unterschied sein, aber es ist doch einer. Bei einem Originaltext funktioniert das Labeln und Referieren problemlos mit \input. Damit ist mein eigentliches Problem gelöst.

Das Problem scheint auch wirklich bei revtex4 zu liegen. Wenn ich z.B. die article-Klasse und \include verwende, funktioniert das Labeln ebenfalls. Ich werd die Leute bei revtex mal anschreiben und sie auf diesen Thread hier verweisen.

Danke für deine Hilfe, hast mir den Tag gerettet. Very Happy

sommerfee
Forum-Century
Forum-Century

Beiträge: 213
Anmeldedatum: 12.07.08
Wohnort: Ich bin hier nicht mehr zu erreichen!
Version: ---
     Beitrag Verfasst am: 19.09.2010, 20:09     Titel:
  Antworten mit Zitat      
dave hat Folgendes geschrieben:
Das Problem scheint auch wirklich bei revtex4 zu liegen.


Definitiv. Wenn ich dies hier übersetze:
Code

\RequirePackage{filecontents}
\begin{filecontents*}{test_02.tex}
\section{Lorem ipsum}
\begin{figure}[!ht]
\rule{2cm}{2cm}
\caption{foo\label{bild}}
\end{figure}
\ref{bild}
\end{filecontents*}
\documentclass{revtex4-1}
\begin{document}
\include{test_02}
%\input{test_02}
\end{document}
 

sieht man folgendes im log-file:

Code

) [1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}
\@writefile{toc}{\contentsline {section}{\numberline {I}Lorem ipsum}{1}{}}
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces foo}}{1}{
}}
\newlabel{bild}{{1}{1}{}{}{}}
] (./test.aux (./test_02.aux))
 


Die \@writefile und \newlabel haben aber in der Log-Ausgabe rein gar nichts zu suchen, die gehören eigentlich in die aux-Datei!
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 20.09.2010, 09:08     Titel:
  Antworten mit Zitat      
Die Klasse definiert \clearpage um, was dazu führt, dass bei \include die Unter-aux-Datei zur per \include geladenen Datei bereits geschlossen ist, wenn die letzte Seite dieser Datei ausgegeben wird. Daher landet dann alles, was in diese aux-Datei gehört in der Konsole und der log-Datei.

Ich würde das als Bug bezeichnen. Du solltest das an den Autor der Klasse melden.

Workaround: Am Ende der per \include geladenen Datei ein \clearpage einfügen.
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

dave
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.09.2010, 16:46     Titel:
  Antworten mit Zitat      
Ich habe die Autoren von revtex angeschrieben und ihnen das Minimalbeispiel von Mechanicus geschickt. Laut deren Angabe wird die Datei fehlerlos kompiliert. Ist irgendwie schwer von einem Bug zu sprechen, wenn die Entwickler ihn nicht reproduzieren können. Confused

bloodworks
Moderator
Moderator


Beiträge: 1429
Anmeldedatum: 19.01.09
Wohnort: /dev/null
Version: MacTeX 2011
     Beitrag Verfasst am: 21.09.2010, 16:59     Titel:
  Antworten mit Zitat      
Hallo ich habe gerade das Beispiel von sommerfee ausprobiert. Ich kann den Bug (oder wie auch immer) bestätigen.

MacTeX 2010 pdflatex snow leo

Code

*File List*
filecontents.sty    2009/03/17 v1.2 Create an external file from within a LaTeX
 document
revtex4-1.cls    2010/02/25/18:00:00 4.1p (http://publish.aps.org/revtex4/ for
documentation)
  aps4-1.rtx
aps10pt4-1.rtx
textcase.sty    2004/10/07 v0.07 Text only upper/lower case changing (DPC)
     url.sty    2006/04/12  ver 3.3  Verb mode for urls, etc.
  natbib.sty    2009/11/07 8.31a (PWD, AO)
  natbib.cfg
revsymb4-1.sty    2010/02/25/18:00:00 4.1p (http://publish.aps.org/revtex4/ for
 documentation)
 test_02.tex
 ***********
 

Mag auch sein, dass das eine Inkompatibilität ist.
_________________

[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2] Minimalbeispiel | [3] FAQ
[4] Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.

Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 21.09.2010, 17:22     Titel:
  Antworten mit Zitat      
Ich habe sogar revtex4-1.cls in Version 2010/07/25/20:33:00 4.1r (http://publish.aps.org/revtex4/ for documentation) und der Fehler, dass das Material für die aux-Datei in der log-Datei landet (Grund siehe oben) tritt definitiv auf. Das ist mit dem kleinen Minimalbeispiel von sommerfee sehr schön nachzuvollziehen. Obiges ist übrigens die neuste Version, die ich unter der angegebenen Adresse, auf CTAN und in TeX Live 2010 finden konnte.
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2020 goLaTeX.de