Ich habe versucht, Clang unter Windows einzurichten. Bis jetzt überlebte ich mit Visual Studio und CMake und einigen anderen Überraschungen. Aber es stellt sich heraus, dass Clang nicht mit einer eigenen C ++ stdlib-Implementierung ausgeliefert wird. Daher entschied ich mich, libstdc ++ von GCC 4.7.0 für MinGW zu verwenden.
Zunächst habe ich den Suchpfad zu meinen HeaderSearchOptions hinzugefügt.
%Vor% Der Pfad befindet sich genau dort, wo sich die Header befinden. Ich habe ihn buchstäblich kopiert und aus dem Windows Explorer eingefügt (und dann die Backslashes für Escapes verdoppelt). Clang besteht jedoch darauf, dass <iostream>
nicht gefunden werden kann, obwohl eine Datei namens iostream
genau bei path
existiert.
Warum kann Clang meinen Header nicht finden, und was muss ich noch tun, um libstdc ++ zu benutzen?
Hier ist mein Code
%Vor% Wenn Sie das Frontend nicht verwenden, müssen Sie clang::InitializePreprocessor
und clang::BuiltinContext::InitializeBuiltins
manuell aufrufen.
Zusätzlich muss die Dreiergruppe "MinGW32" als Verkäufer benennen. Wenn Sie beispielsweise "MinGW" nennen, wird Clang im Stillen nicht erkennen, dass Sie die Kompatibilität gewünscht haben und nutzlose Objektdateien erzeugen.