wake-up-neo.com

Corecrt.h kann nicht gefunden werden: $ (UniversalCRT_IncludePath) ist falsch

Ich habe gerade Visual Studio 2015 auf meinem funktionierenden Laptop mit Windows 10 installiert.

Ich habe ein Repository mit einer Lösung geklont, die mit derselben Version von Visual Studio (Update 3) auf einem anderen PC erstellt wurde, immer mit Windows 10.

Wenn ich versuche, die Lösung auf meinem Laptop zu erstellen, erhalte ich die folgende Fehlermeldung:

c:\program files (x86)\Microsoft visual studio 14.0\vc\include\crtdefs.h(10): fatal error C1083: Cannot open include file: 'corecrt.h': No such file or directory

In dieser Seite habe ich gelesen, dass ich $(UniversalCRT_IncludePath) zu meinen Include-Pfaden hinzufügen muss, aber selbst in diesem Fall erhalte ich den gleichen Fehler.

Ich habe geprüft und $(UniversalCRT_IncludePath) verweist auf diesen Pfad:

C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt

Dieser Pfad fehlt auf meinem Laptop. Stattdessen habe ich Folgendes:

C:\Program Files (x86)\Windows Kits\10\Include\10.0.10150.0\ucrt

Es scheint also, dass die Fensterversion anders ist. Wahrscheinlich trifft dies zu, da ich auf meinem Laptop das 1511-Windows-Upgrade nicht installiert habe, während auf dem anderen PC alles korrekt installiert ist.

Meine Frage ist, wie ich in beiden PCs auf corecrt.h-Datei verweisen kann, ohne sich mit Pfaden durcheinander zu bringen. Ich möchte vermeiden, diese Pfade hart zu verknüpfen, da sie vom PC abhängen. Ich verstehe nicht, warum in meinem Laptop der Pfad falsch ist, wenn man bedenkt, dass er systemabhängig sein sollte und nicht in Lösung verkabelt werden sollte.

Wie kann ich dieses Problem lösen? Ich weiß, dass ich meinen Laptop auf dieselbe Windows-Version aktualisieren kann, aber ich möchte es aus vielen Gründen vermeiden.

- BEARBEITEN

Ich habe bemerkt, dass ich diesen Pfad habe:

C:\Program Files (x86)\Windows Kits\8.1\Include\10.0.10240.0\ucrt

Es hat die gleiche 10.0.10240.0-Version, bezieht sich jedoch auf eine andere Windows-Kit-Version. In diesem Fall ist möglicherweise ein Problem aufgetreten. Auf meinem Laptop habe ich auch Visual Studio 2013, daher kann es möglicherweise davon stammen, aber ich kann es nicht entfernen, da ich ein anderes Projekt mit Visual Studio 2013 verwalte und ich es noch nicht entfernen kann.

Vielleicht kann ich in Visual Studio 2015 Ordner explizit die $(UniversalCRT_IncludePath) in einer .bat-Datei (vcvarsall.bat oder ähnliches) festlegen, aber ich weiß nicht, welche Datei und in welcher Position.

47
Jepessen

Für Visual Studio 2017 musste ich:

  1. Führen Sie das Visual Studio-Installationsprogramm aus.
  2. Klicken Sie auf die Schaltfläche Ändern.
  3. Gehen Sie zur Registerkarte "Einzelkomponenten".
  4. Scrollen Sie nach unten zu "Compiler, Tools und Laufzeiten erstellen".
  5. Aktivieren Sie "Windows Universal CRT SDK".
  6. Installieren.
88
parsley72

sie haben das wahrscheinlich schon behoben, aber wenn jemand anderes mitkommt, habe ich das gelöst, indem ich dem Tipp hier folgte.

Legen Sie grundsätzlich die folgenden Systemumgebungsvariablen fest:

INCLUDE="C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt"
LIB="C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\um\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64"

Es gibt wahrscheinlich eine viel bessere Best-Practice-Methode, aber um es schnell zu beheben, hat es gut funktioniert. 

22
Helge S

Ich hatte das gleiche Problem. Ich habe die Antworten hier versucht. Es hat nicht zu 100% funktioniert. Ich habe festgestellt, dass das VC++ 2015-Toolset (x86, x64) für die 2017 Community Edition (die ich jetzt verwende) erforderlich ist, jedoch ohne Include- oder Lib-Links.

Freundliche Grüße.

6
user7869952

Überprüfen Sie die Projekteigenschaften (Menü Projekt> Eigenschaften). Überprüfen Sie unter Konfigurationseigenschaften> Allgemein die Platform Toolset - und Windows SDK-Version (bei Verwendung von Platform Toolset> VS2015) Nachdem Sie Platform Toolset = VS2017 und Windows SDK Version = 10.xx festgelegt haben, hat es funktioniert mir.

5
dvidben

Möglicherweise fehlte etwas bei der Installation von Visual Studio .. Sie können überprüfen, ob Sie vergessen haben, das VC++ - Toolset zu wählen.

  1. Control Panel -> All Control Panel Items -> Programs and Features -> Visual studio 2015
  2. Klicken Sie auf change/uninstall
  3. Wählen Sie die VC++2015 toolset(x86,x64) und installieren Sie.

Für Visual Studio Community 2017 RC (15.0.26206.0) lautet der Name des optionalen Tools VC++ 2017 v141 toolset(x86,x64):

 `VC++ 2017 v141 toolset(x86,x64)

5
simondoo

Für Visual Studio 2015 Enterprise habe ich das Problem auf ähnliche Weise wie parsley72 gelöst:

1. Run the Visual Studio Installer;
2. Select Modify button;
3. Go to "Windows and Web Development";
4. Tick "Universal Windows App Development Tools";
5. Install.
1
JackOLantern

Für mich hilft diese Einstellung in Visual Studio: 

  • in Projekteigenschaften -> VC++ - Verzeichnisse -> Verzeichnisse einschließen -> zum Bearbeiten öffnen.
  • aktivieren Sie das Kontrollkästchen Von übergeordneten oder Projektvorgaben übernehmen
1
Libor B.

Ich habe gerade diesen Fehler erhalten, als ich PyTorch unter Windows kompilierte und Windows Universal CRT SDK installiert hatte. Nach dem Herumspielen scheint es zwei Ursachen zu geben:

  1. Stellen Sie sicher, dass Sie vcvarsall.bat ausführen. Wenn Sie die native VS2017 x64-Eingabeaufforderung starten, wird diese Bat-Datei ausgeführt.
  2. Stellen Sie vcvars_ver auf die korrekte Version Ihres Computers ein. Um die Version zu finden, die Sie haben, gehen Sie zu %PROGRAMFILES(X86)%\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\. In diesem Ordner sehen Sie Ordner wie 14.13.26128. Sie setzen also vcvars_ver auf 14.13.

Das folgende Fragment in meiner Batch-Datei zeigt zwei Schritte:

set "VS150COMNTOOLS=%PROGRAMFILES(X86)%\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build"
call "%VS150COMNTOOLS%\vcvarsall.bat" x64 -vcvars_ver=14.13
0
Shital Shah

Ich habe keine Erfahrung mit VC++, aber ich muss ta-lib für ein Python-Projekt erstellen. Da ich nichts in VC Studio anfassen möchte, aber mit der normalen C-Programmierung unter Unix Erfahrung hatte, habe ich den Ansatz gewählt, den Include-Pfad direkt im Makefile hinzuzufügen. z.B.:

INCPATH = -I "..........\include" -I "..........\src\ta_common" -I "..........\src\ta_abstract "-I" ..........\src\ta_abstract\tables "-I" ..........\src\ta_abstract\frames " -I" C :\Programme (x86)\Windows Kits\10\Include\10.0.10150.0\ucrt "-I" C:\Programme (x86)\Microsoft Visual Studio 14.0\VC\include "

Es gibt mehrere Makefiles in Unterverzeichnissen, also musste ich an jedem ein paar Änderungen vornehmen, aber es funktioniert gut für mich.

0
hwase0ng

Fügen Sie Ihrem Computer das ältere Windows SDK (z. B. Version 8.1/Universal) hinzu (wie von parsley72 beschrieben), oder fügen Sie Re-Target-Projekte hinzu, um eines der auf Ihrem Computer installierten Windows SDKs zu verwenden . .

Ich bin gerade mit VS2017 darauf gestoßen und das Re-Targeting hat funktioniert. Ich warte jedoch immer noch auf eine Antwort, ob das Targeting einer neueren Windows SDK-Version negative Auswirkungen hat .

0
codesniffer

Installieren Sie Windows 10 SDK neu. Wenn Sie Windows SDK vermissen oder dessen Inhalt geändert hat, wird dieser Fehler angezeigt. Er ist mir nach der Installation von WDK passiert

0
Mahdi Khalili

Ich behebe diesen Fehler in den nächsten 3 Schritten.

1) Alle Dateien von:

C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\um\x86
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86

Kopieren nach:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS\lib\x86

2) Alle Dateien von:

C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\um\x64
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64

Kopieren nach:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS\lib\x64

3) Alle Dateien von:

C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt

Kopieren nach: 

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS\include

Dann baue ich mein Projekt neu auf und alles funktioniert einwandfrei

0

Der Grund für den Fehler kann möglicherweise darin liegen, dass Sie nicht über die aktualisierte Version von Windows 10 SDK verfügen

sie können window 10 sdk auch autonom herunterladen und installieren,

verwenden Sie diesen Link windows 10 sdk und fügen Sie ihn Ihrem Systempfad hinzu

ich hoffe es hilft.

0
Khan

Das Windows SDK, das Sie in Ihrem Projekt ausgewählt haben, ist nicht installiert.

 Visual Studio project setting windows SDK version 8.1

Installieren Sie entweder das gewünschte SDK oder wählen Sie eines der installierten aus (Hinweis: Durch Auswahl der Option <von Elternteil erben> wird standardmäßig 8.1 (standardmäßig in VS 2017+ nicht installiert) verwendet

Um das Windows SDK zu installieren, führen Sie das Installationsprogramm aus und gehen Sie zu Einzelkomponenten und scrollen Sie ganz nach unten:

 Visual Studio installer - individual components - windows 8.1 SDK

0
rustyx