Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menjelaskan kode kesalahan MSB8040.
Teks pesan
MSB8040: Spectre-mitigated libraries are required for this project.
Deskripsi
Kesalahan ini terjadi ketika proyek memerlukan pustaka yang dimitigasi Spectre (C/C++>Spectre Mitigation tidak diatur ke Dinonaktifkan), tetapi pustaka tidak diinstal. Untuk informasi selengkapnya, lihat Mitigasi Spectre di Microsoft Foundation Classes (MFC).
Resolusi
Pertama, tentukan apakah Anda ingin menerapkan mitigasi Spectre, lalu ikuti langkah-langkah yang diperlukan untuk memperbarui penginstalan Anda untuk mengatasi kesalahan.
Nonaktifkan mitigasi Spectre
Jika Anda tidak ingin menggunakan mitigasi Spectre, nonaktifkan opsi di Visual Studio. Untuk build dari baris perintah, konfirmasikan bahwa Anda tidak menggunakan opsi pengkompilasi /Qspectre atau variannya /Qspectre-load dan /Qspectre-load-cf.
Untuk menonaktifkan opsi di Visual Studio, ikuti langkah-langkah berikut:
- Di Penjelajah Solusi, klik kanan simpul proyek, dan pilih Properti (Alt+Enter).
- Dalam dialog Halaman Properti untuk proyek Anda, pilih Pengaturan Konfigurasi>C/C++>Pembuatan Kode pada halaman properti.
- Atur properti Mitigasi Spectre menjadi Dinonaktifkan.
- Pilih OK untuk menyimpan perubahan Anda.
Aktivasikan mitigasi Spectre
Jika Anda memutuskan untuk menggunakan mitigasi Spectre, pastikan penginstalan Anda menyertakan komponen kompilator dan pustaka yang benar dengan dukungan untuk mitigasi Spectre.
Untuk memperbarui penginstalan Anda, ikuti langkah-langkah berikut:
- Buka Alat Penginstal Visual Studio.
- Pilih tombol Ubah di samping versi Visual Studio yang Anda gunakan.
- Pilih tab Komponen Individual di bagian atas dialog.
- Dalam kotak Komponen pencarian , masukkan Spectre v14.2.
- Di bagian Compiler, alat pembangun dan runtime, pastikan opsi MSVC v142... perpustakaan yang dimitigasi Spectre dipilih untuk semua arsitektur yang ditargetkan oleh build.
- Untuk menggunakan ATL atau MFC, pilih juga pustaka, seperti C++ MFC untuk alat build v142 terbaru dengan Spectre Mitigations (atau versi yang sesuai untuk toolset Anda) untuk semua arsitektur target build. Untuk informasi selengkapnya, lihat Menginstal pustaka MFC dan ATL.
- Pilih Ubah untuk menginstal komponen yang dipilih.
Tentukan opsi pengkompilasi
Jika Anda mengaktifkan mitigasi Spectre, pastikan Anda menentukan opsi pengkompilasi /Qspectre. Untuk informasi selengkapnya, lihat opsi pengkompilasi /Qspectre .
Untuk menentukan /Qspectre opsi pengkompilasi, ikuti langkah-langkah berikut:
Di Penjelajah Solusi, klik kanan simpul proyek, dan pilih Properti (Alt+Enter).
Dalam dialog Halaman Properti untuk proyek Anda, pilih Pengaturan Konfigurasi>C/C++>Pembuatan Kode pada halaman properti.
Atur properti Spectre Mitigations ke salah satu nilai berikut:
- Diaktifkan
- Semua beban untuk /Qspectre-load
- Semua Beban Alur Kontrol untuk /Qspectre-load-cf
Pilih OK untuk menyimpan perubahan Anda.
Berlaku pada
Semua versi MSBuild