Freigeben über


MSBuild-Fehler MSB8040

Bibliotheken mit Spectre-Entschärfung sind für dieses Projekt erforderlich.

Dieser Fehler tritt auf, wenn Bibliotheken mit Spectre-Entschärfung erforderlich sind (C/C++>Spectre Mitigation (Spectre-Entschärfung) ist nicht auf Deaktiviert festgelegt), aber keine Bibliotheken mit Spectre-Entschärfung installiert sind.

Um den Fehler zu beheben, entscheiden Sie zunächst, ob Sie eine Spectre-Mitigation wünschen. Informationen zur Spectre-Mitigation finden Sie auf der Seite zur /Qspectre-Compileroption. Wenn Sie keine Spectre-Mitigation wünschen, stellen Sie sicher, dass die Option deaktiviert ist. Stellen Sie bei den Befehlszeilen-Builds sicher, dass die /QspectreCompileroption oder ihre zugehörigen Varianten/Qspectre-load nicht verwendet werden/Qspectre-load-cf . Um diese in der Visual Studio-IDE zu deaktivieren, öffnen Sie die Eigenschaften für Ihre Projekte und setzen Sie auf der Seite Konfigurationseigenschaften>C/C++->Code-Generierung die Spectre-Mitigations-Eigenschaften auf deaktiviert.

Disable Spectre mitigations in the IDE

Wenn Sie Spectre-Entschärfung wünschen, stellen Sie sicher, dass die richtigen Compiler-und Bibliothekskomponenten zur Unterstützung der Spectre-Mitigation installiert sind. Klicken Sie im Visual Studio-Installer auf Ändern und dann auf Einzelne Komponenten, suchen Sie nach „Spectre v14.2“, und stellen Sie im Abschnitt Compiler, build tools and runtime (Compiler, Buildtools und Runtime) sicher, dass MSVC v142... Spectre-mitigated libs (MSVC v142... Bibliotheksdateien mit Spectre-Entschärfung) für alle Architekturen ausgewählt wird, für die Sie Komponenten erstellen. Wenn Sie die ATL- oder eine MFC-Version verwenden, stellen Sie sicher, dass die Bibliotheken wie C++-MFC für die neuesten v142-Buildtools mit Spectre-Entschärfungen (oder die entsprechende Version für Ihre Toolset) auch für alle Architekturen ausgewählt werden, für die Sie Komponenten erstellen.

Installing the Spectre mitigations library

Stellen Sie außerdem sicher, dass Sie eine der /Qspectre-Compileroptionen verwenden, um Spectre-Entschärfungen zu aktivieren. Um diese Eigenschaft in der Visual Studio-IDE festzulegen, öffnen Sie Eigenschaften für Ihre Projekte, und legen Sie auf der Seite Konfigurationseigenschaften>C/C++->Code-Generierung die Spectre- Mitigationseigenschaft auf Aktiviertoder Alle Auslastungen für /Qspectre-loadoder Alle Ablaufsteuerungs-Auslastungen für /Qspectre-load-cf.

Weitere Informationen finden Sie unter Spectre-Mitigationen in MSVC.