Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article décrit le code d’erreur MSB8040.
Texte du message
MSB8040: Spectre-mitigated libraries are required for this project.
Descriptif
Cette erreur se produit lorsque le projet nécessite des bibliothèques atténuées par Spectre (C/C++>Spectre Mitigation n’est pas définie sur Désactivé), mais que les bibliothèques ne sont pas installées. Pour plus d’informations, consultez Atténuations de Spectre dans les classes Microsoft Foundation (MFC).
Résolution
Tout d’abord, déterminez si vous souhaitez implémenter l’atténuation de Spectre, puis suivez les étapes nécessaires pour mettre à jour votre installation pour résoudre l’erreur.
Désactiver la mitigation Spectre
Si vous ne souhaitez pas utiliser l’atténuation spectre, désactivez l’option dans Visual Studio. Pour les builds de ligne de commande, vérifiez que vous n’utilisez pas l’option /Qspectre du compilateur ou ses variantes /Qspectre-load et /Qspectre-load-cf.
Pour désactiver l’option dans Visual Studio, procédez comme suit :
- Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud du projet, puis sélectionnez Propriétés (Alt+Entrée).
- Dans la boîte de dialogue Pages de Propriétés de votre projet, sélectionnez la page de propriétés Propriétés de Configuration>C/C++>Génération de Code.
- Définissez la propriété Spectre Mitigations sur Désactivé.
- Sélectionnez OK pour enregistrer vos modifications.
Activer l’atténuation de Spectre
Si vous décidez d’utiliser l’atténuation de Spectre, vérifiez que votre installation inclut les composants de compilateur et de bibliothèque appropriés avec prise en charge de l’atténuation de Spectre.
Pour mettre à jour votre installation, procédez comme suit :
- Ouvrez Visual Studio Installer.
- Sélectionnez le bouton Modifier en regard de la version de Visual Studio que vous utilisez.
- Sélectionnez l’onglet Composants individuels en haut de la boîte de dialogue.
- Dans la zone Composants de recherche , entrez Spectre v14.2.
- Dans la section Compilateur, outils de compilation et exécution, assurez-vous que l'option MSVC v142… Spectre-mitigated libs est sélectionnée pour toutes les architectures ciblées par la compilation.
- Pour utiliser ATL ou MFC, sélectionnez également les bibliothèques, telles que C++ MFC pour les derniers outils de construction v142 avec Mitigations Spectre (ou la version appropriée pour votre ensemble d’outils) pour toutes les architectures visées par la construction. Pour plus d’informations, consultez Installer les bibliothèques MFC et ATL.
- Sélectionnez Modifier pour installer les composants sélectionnés.
Spécifier les options du compilateur
Si vous activez les atténuations de Spectre, veillez à spécifier une /Qspectre option de compilateur. Pour plus d’informations, consultez l’option du compilateur /Qspectre .
Pour spécifier l’option du /Qspectre compilateur, procédez comme suit :
Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud du projet, puis sélectionnez Propriétés (Alt+Entrée).
Dans la boîte de dialogue Pages de Propriétés de votre projet, sélectionnez la page de propriétés Propriétés de Configuration>C/C++>Génération de Code.
Définissez la propriété Spectre Mitigations sur l’une des valeurs suivantes :
- Activé
- Toutes les charges pour /Qspectre-load
- Toutes les charges de flux de contrôle pour /Qspectre-load-cf
Sélectionnez OK pour enregistrer vos modifications.
S’applique à
Toutes les versions de MSBuild