Seite 1 von 1

Package ifluatex Error: Name clash, \ifluatex is already defined.

Verfasst: Do 31. Dez 2020, 15:15
von Jaffet

Hallo Latex-Communitity,

ich habe eine Grafik mit TikZ angefertigt (siehe Anhang). Es hat alles fehlerfrei funktioniert, bis zu dem Zeitpunkt, wo ich im selben Editor (TexStudio) ein anderes Projekt geöffnet und kompilieren lassen habe. Als ich danach erneut meine Graik kompilieren lassen wollte, warf TexStudio folgende Fehlermeldung aus:

! Package ifluatex Error: Name clash, \ifluatex is already defined.

Hier ist der Latex-Code meiner Grafik:

\documentclass[landscape]{article}
\usepackage[a4paper, left=.5cm, right=.5cm, top=.5cm, bottom=.5cm]{geometry}
\usepackage{fontspec}
\usepackage{tikz}
\usepackage{hyperref}
\pgfdeclarelayer{background}
\pgfdeclarelayer{foreground}
\pgfsetlayers{background,main,foreground} 
\usetikzlibrary{positioning}
\usetikzlibrary{arrows}
\usetikzlibrary{arrows.meta}


\begin{document}
\sffamily
\begin{figure}[!h]
\centering
\begin{tikzpicture}[
Label/.style={text width=2cm , font=\huge ,align= center},
Point/.style={shape=circle,font=\huge,draw=yellow!80,fill=yellow!50,thick,node distance=0mm, minimum size=1cm},
coordinate_point/.style={shape=circle,draw=red!80,fill=red!80,thick,}
]
	\begin{pgfonlayer}{background}
		\draw [color=black!70]  (-12,-8) grid (12,8);
	\end{pgfonlayer}{background}
	\coordinate[coordinate_point] (centerpoint) at (0,0);
	\coordinate[coordinate_point] (left_bottom) at (-12,-8);
	\coordinate[coordinate_point] (top_right) at (12,8);
	%Alice-Seite
	\node(Alice)[scale=3] at (-10,2) {\includegraphics{icons/alice}};
	\node(pub_key_left)[scale=1.4] at (-10,-1) {\includegraphics{icons/public_key}};	
	\node(priv_key_left)[scale=1.4] at (-8,-1) {\includegraphics{icons/private_key}};
	\node(send_message) at (-4,2) {\includegraphics{icons/message_and_signature}};
	\node(original_message)[below=of priv_key_left] {\includegraphics{icons/message_normal}};
	\node(original_hashed)at (-8,-8) {\includegraphics{icons/message_hashed}};
	\node(signature)[scale=0.8] at (-3.5, -4) {\includegraphics{icons/signature}};
	%Bob-Seite
	\node(Bob)[scale=2] at (10,2) {\includegraphics{icons/bob}};
	\node(pub_key_right)[scale=1.4] at (10,-1) {\includegraphics{icons/public_key}};
	\node(acceptance_message) at (4,2.2) {\includegraphics{icons/message_encrypt}};
	\node(acceptance_signature)[scale=0.8] at (4.4,0.5) {\includegraphics{icons/signature}};
	\node(bobs_hash_rigged) at (4,-6) {\includegraphics{icons/message_hashed_rigged}};
	\node(bobs_hash) at (8,-6) {\includegraphics{icons/message_hashed}};
	\begin{pgfonlayer}{background}
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]},name=hash_arrow]  (original_message.south) --node(Point2)[midway,Point] {2} (original_hashed.north);
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]}] (priv_key_left) to [out=0,in=90] (signature);
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]}] (original_hashed) to [out=0,in=270] (signature);
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]}] (signature) to [out=0,in=0] (send_message);
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]}] (original_message.north) -- (send_message.west);
	\draw [] (acceptance_signature.east) .. controls (5.5,-2.5) and (5.5,-2.8) .. (8,-3);
	\draw [] (pub_key_right.west) .. controls (9,-2.8) .. (8,-3);
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]}] (8,-3) to [out=270,in=90] node(Point8)[midway,Point] {8}(bobs_hash);
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]},rounded corners=50pt] (send_message.north) -- (-4,5)--node(Point6)[midway,Point] {6}(4,5) --(acceptance_message.north);
	\draw [->,arrows={-Triangle[angle=90:10pt,fill=black]}] (acceptance_message) to [out=180,in=180] node(Point7)[midway,Point] {7}(bobs_hash_rigged);
	\draw [->, rounded corners=50pt,arrows={-Triangle[angle=90:10pt,fill=black]}] (pub_key_left.south) -- (-10,-9) --node(Point5)[midway,Point] {5} (10,-9) -- (pub_key_right.south);
	\end{pgfonlayer}	
	%Points
	\node[left=of pub_key_left,Point](Point1){1};
	\node[left=0.1of signature,Point](Point3){3};
	\node[above left=0.1of send_message,Point](Point4){4};
	\node[Point](Point9) at (6,-7){9};
\end{tikzpicture}
\end{figure}	
\end{document}

Re: Package ifluatex Error: Name clash, \ifluatex is already defined.

Verfasst: Do 31. Dez 2020, 15:42
von Jaffet

Fehlerursache muss irgendwo bei \usepackage{hyperref} liegen. Ohne das Paket läufts nämlich. Allerdings hatte ich es von Anfang an enthalten. Anfangs hatte er damit kein Problem.


Re: Package ifluatex Error: Name clash, \ifluatex is already defined.

Verfasst: Do 31. Dez 2020, 16:43
von gast

Mach mal ein vollständiges Update (MiKTeX-User müssen dazu mit der MiKTeX-Console sowohl ein Update im Admin-Modus als auch im User-Modus durchführen). Kann sein, dass irgend eines der Pakete nicht aktuell ist und selbst noch \ifluatex definiert. Inzwischen wird das aber von iftex definiert, das gleichzeitig neuerdings von ifvtex, ifpdf, ifxetex und ifluatex geladen wird. Die letztlich sind all diese Pakete nur noch Wrapper für das neue iftex.

Mehr könnte man eventuell aus der log-Datei ablesen. Aber, wenn das Komplettupdate das Problem löst, braucht es das nicht. Achja: Nach dem Update ggf. noch alle Hilfsdateien löschen!


Re: Package ifluatex Error: Name clash, \ifluatex is already defined.

Verfasst: Do 31. Dez 2020, 16:45
von gast

BTW: Dein Code ist bei uns nicht lauffähig, weil diverse externe Dateien verwendet werden. Vermutlich könntest du diese leicht ersetzen. Wie wird in der Minimalbeispiel-Anleitung erklärt.


Re: Package ifluatex Error: Name clash, \ifluatex is already defined.

Verfasst: Do 31. Dez 2020, 16:47
von gast

Außerdem ist eine Gleitumgebung mit Option [h!] aber ohne \caption nicht wirklich sinnvoll. Da kann man die Gleitumgebung auch weglassen oder eben die Option und dafür ein \caption ergänzen.


Re: Package ifluatex Error: Name clash, \ifluatex is already defined.

Verfasst: Mo 4. Jan 2021, 09:49
von Jaffet

Vielen Dank für die kompetente Hilfe.

Das MikeTex-Update hat den Fehler behoben. Eine Anleitung, wie man das Update durchführt, findet man hier: https://miktex.org/howto/update-miktex.