Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive il codice di errore MSB8040.
Testo del messaggio
MSB8040: Spectre-mitigated libraries are required for this project.
Descrizione
Questo errore si verifica quando il progetto richiede librerie con mitigazione Spectre (C/C++>Spectre Mitigation non è impostata su Disabilitato), ma le librerie non sono installate. Per ulteriori informazioni, consultare le mitigazioni Spectre nelle Microsoft Foundation Classes (MFC).
Risoluzione
Prima di tutto, determinare se si vuole implementare la mitigazione Spectre e quindi seguire i passaggi necessari per aggiornare l'installazione per risolvere l'errore.
Disabilitare la mitigazione Spectre
Se non si vuole usare la mitigazione Spectre, disabilitare l'opzione in Visual Studio. Per le compilazioni della riga di comando, verificare di non usare l'opzione del /Qspectre compilatore o le relative varianti /Qspectre-load e /Qspectre-load-cf.
Per disabilitare l'opzione in Visual Studio, seguire questa procedura:
- In Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo del progetto e scegliere Proprietà (ALT+INVIO).
- Nella finestra di dialogo Pagine delle proprietà per il progetto, selezionare la pagina Proprietà di configurazione>C/C++>Generazione del codice.
- Impostare la proprietà Spectre Mitigations su Disabled.
- Selezionare OK per salvare le modifiche.
Abilitare la mitigazione di Spectre
Se si decide di usare la mitigazione Spectre, assicurarsi che l'installazione includa i componenti del compilatore e della libreria corretti con supporto per la mitigazione Spectre.
Per aggiornare l'installazione, seguire questa procedura:
- Aprire il programma di installazione di Visual Studio.
- Selezionare il pulsante Modifica accanto alla versione di Visual Studio usata.
- Selezionare la scheda Componenti individuali nella parte superiore della finestra di dialogo.
- Nella casella Cerca componenti immettere Spectre v14.2.
- Nella sezione Compilatore, strumenti di compilazione e runtime, assicurarsi che l'opzione MSVC v142... Spectre-mitigated libs sia selezionata per tutte le architetture per cui è destinata la compilazione.
- Per usare ATL o MFC, selezionare anche le librerie, ad esempio C++ MFC per gli strumenti di compilazione v142 più recenti con mitigazioni Spectre (o la versione appropriata per il set di strumenti) per tutte le architetture delle destinazioni di compilazione. Per altre informazioni, vedere Installare librerie MFC e ATL.
- Selezionare Modifica per installare i componenti selezionati.
Specificare le opzioni del compilatore
Se si abilitano le mitigazioni Spectre, assicurarsi di specificare un'opzione /Qspectre del compilatore. Per altre informazioni, vedere l'opzione del compilatore /Qspectre .
Per specificare l'opzione del /Qspectre compilatore, seguire questa procedura:
In Esplora soluzioni fare clic con il pulsante destro del mouse sul nodo del progetto e scegliere Proprietà (ALT+INVIO).
Nella finestra di dialogo Pagine delle proprietà per il progetto, selezionare la pagina Proprietà di configurazione>C/C++>Generazione del codice.
Impostare la proprietà Spectre Mitigations su uno dei valori seguenti:
- abilitato
- Tutti i carichi per /Qspectre-load
- Tutti i caricamenti del flusso di controllo per /Qspectre-load-cf
Selezionare OK per salvare le modifiche.
Si applica a:
Tutte le versioni di MSBuild