Chyba nástroje MSBuild MSB8040
Pro tento projekt jsou vyžadovány knihovny zmírněné specifikací Spectre.
K této chybě dochází v případě, že je požadováno použití knihoven zmírnit omezení rizik spectre (zmírnění rizik C/C++>Spectre není nastaveno na Zakázáno), ale nejsou nainstalovány knihovny Spectre zmírněné.
Pokud chcete chybu opravit, nejprve se rozhodněte, jestli chcete zmírnění rizik Spectre. Informace o zmírnění rizik spectre najdete na stránce pro možnost kompilátoru /Qspectre . Pokud nechcete omezení rizik spectre, ujistěte se, že je zakázaná. V případě sestavení příkazového řádku zkontrolujte, že nepoužíváte možnost kompilátoru /Qspectre
nebo jeho varianty /Qspectre-load
a /Qspectre-load-cf
. Pokud ho chcete zakázat v integrovaném vývojovém prostředí sady Visual Studio, otevřete vlastnosti pro vaše projekty a na stránce vlastností>generování kódu C/C++>Konfigurace nastavte vlastnost Spectre Mitigations na Zakázáno.
Pokud chcete zmírnění rizik Spectre, ujistěte se, že jsou nainstalované správné komponenty kompilátoru a knihovny s podporou zmírnění rizik Spectre. V instalačním programu sady Visual Studio zvolte Upravit a pak zvolte Jednotlivé komponenty, vyhledejte "Spectre v14.2" a v části Kompilátor, nástroje sestavení a modul runtime se ujistěte, že MSVC v142... Pro všechny architektury, pro které vytváříte, jsou vybrané knihovny spectre. Pokud používáte knihovny ATL nebo MFC, ujistěte se, že knihovny, jako je C++ MFC pro nejnovější nástroje sestavení v142 se spectre mitigations (nebo příslušnou verzí sady nástrojů), jsou také vybrané pro všechny architektury, pro které vytváříte.
Pokud chcete také povolit zmírnění rizik Spectre, ujistěte se, že používáte jednu z možností kompilátoru /Qspectre
. Pokud chcete tuto vlastnost nastavit v integrovaném vývojovém prostředí sady Visual Studio, otevřete vlastnosti pro vaše projekty a na stránce vlastností generování>kódu C/C++>, nastavte vlastnost Spectre Mitigations na Povoleno nebo Všechna načtení pro /Qspectre-load nebo Všechna načtení toku řízení pro /Qspectre-load-cf.
Další informace naleznete v tématu Omezení rizik spectre v prostředí MFC.