../src/engine/client/client.cpp:5:10: fatal error: immintrin.h: No such file or directory
#include <immintrin.h> //_mm_pause
^~~~~~~~~~~~~
Ich glaube, der Fix wurde nicht auf CMake portiert.
Auf 64bit können Sie einfach #include <immintrin.h>
.
Wenn es nicht funktioniert, können Sie versuchen, das Kompilierungsflag -msse2
hinzuzufügen? Es sollte es afaik beheben.
@Dune-jr Ich glaube nicht, dass -msse2
auf ppc64le oder s390x oder arm funktioniert, da es x86-spezifisch ist.
Richtig.
Da Sie 64-Bit verwenden, sollte es einfach ohne #include <immintrin.h>
funktionieren
@Dune-jr gibt es auch 32-Bit-Arm ;)
Kopiert von https://github.com/teeworlds/teeworlds/issues/1844#issuecomment -446756342:
Beachten Sie, dass dies immer noch für andere Architekturen als die von Intel (und AMD) kompiliert werden kann. Der fragliche Code ist ziemlich unportabel:
Ich schlage vor, es zu entfernen, bis eine tragbare Lösung gefunden wird. Teeworlds Code (insbesondere außerhalb von src/base/system.c) sollte sich nicht ohne Fallback auf solche Compiler- und Architektur-spezifischen Funktionen verlassen.
Zur Verdeutlichung: Neben Intel gibt es CPU-Architekturen, auf die wir uns nicht verlassen sollten. Wenn dies der Fall ist, sollten wir dies in src/base/system.c tun, aber die Kompilierung auf unbekannten Architekturen
Hilfreichster Kommentar
Kopiert von https://github.com/teeworlds/teeworlds/issues/1844#issuecomment -446756342:
Zur Verdeutlichung: Neben Intel gibt es CPU-Architekturen, auf die wir uns nicht verlassen sollten. Wenn dies der Fall ist, sollten wir dies in src/base/system.c tun, aber die Kompilierung auf unbekannten Architekturen