Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek popisuje kód chyby MSB8041.
Text zprávy
MSB8041: MFC/ATL Libraries are required for this project.
Popis
K této chybě dochází v případě, že projekt vyžaduje třídy Microsoft Foundation (MFC) nebo knihovnu ATL (Active Template Library), ale knihovny se nenašly. Knihovny MFC a ATL se ve výchozím nastavení nenainstalují při instalaci pracovního vytížení C++ v sadě Visual Studio.
Řešení
Ověřte, že jsou nainstalované správné verze knihoven MFC a ATL pro sadu nástrojů sestavení. Existují verze MFC pro každou verzi nástrojů sestavení C++, pro každou cílovou platformu a se zmírněním rizik Spectre nebo bez ní. Například C++ MFC pro nejnovější nástroje sestavení v143 (x86 a x64) má knihovny x86 a x64 bez mitigace Spectre pro nejnovější verzi sady Visual Studio 2022 (v143). Pokud chcete jednoduše použít nejnovější knihovny pro danou verzi nástrojů sady Visual Studio, potřebujete MFC pro C++ pro nejnovější nástroje sestavení [verze] ([target]) pro sestavení bez Spectre a MFC pro C++ pro nejnovější nástroje sestavení [verze] se zmírněním Spectre ([target]) pro sestavení Spectre. Zvolte správnou možnost pro architekturu cílové platformy. Další možnosti podporují scénáře pro konkrétní cílení starší sady nástrojů. Další informace naleznete v tématu MFC Library Versions.
Instalace knihoven MFC a ATL
Otevřete instalační program sady Visual Studio.
Vyberte tlačítko Upravit vedle používané verze sady Visual Studio.
V horní části dialogového okna vyberte kartu Jednotlivé komponenty.
Do vyhledávacího pole součásti zadejte MFC.
Vyberte komponenty MFC, které odpovídají cílům projektu, například x86 nebo ARM64EC. Pokud sestavíte projekty s povolenými omezeními rizik Spectre, vyberte komponenty se zmírněním rizik Spectre.
Ve většině případů chcete vybrat prostředí MFC pro nejnovější nástroje sestavení. Vaše organizace nebo projekt může vyžadovat konkrétní starší verzi sady nástrojů. Ujistěte se, že omezení verzí, cílů a spectre součástí MFC, které instalujete, odpovídají verzi sady nástrojů, cílům a zmírnění rizik Spectre požadovaným projektem, který vytváříte.
Do vyhledávacího pole součásti zadejte ATL.
Vyberte komponenty ATL, které odpovídají cílům projektu, například x86 nebo ARM64EC. Pokud sestavíte projekty s povolenými omezeními rizik Spectre, vyberte komponenty se zmírněním rizik Spectre.
Ve většině případů chcete vybrat ATL pro nejnovější nástroje sestavení. Vaše organizace nebo projekt můžou vyžadovat konkrétní starší verzi nástrojů sestavení MSVC. Ujistěte se, že omezení verzí, cílů a spectre komponent ATL, které instalujete, odpovídají verzi sady nástrojů, cílům a zmírnění rizik Spectre požadovaným projektem, který vytváříte.
Chcete-li nainstalovat vybrané součásti, vyberte možnost Upravit .
Další informace o úpravě sady Visual Studio pro instalaci knihoven a binárních souborů, které potřebujete, najdete v tématu Úprava sady Visual Studio.
Prozkoumání pokročilé diagnostiky
Podrobné odstraňování problémů při sestavování vyvolá chybu MSB8041 v procesu sestavení C++ v cíli Microsoft.CppBuild.targets, pokud není nalezen následující soubor: $(VCToolsInstallDir)atlmfc\lib\$(_SpectreLibsDir)$(PlatformShortName)\mfcs140.lib. Vlastnosti pocházejí z prostředí ($(VCToolsInstallDir)) a konfigurace projektu: $(_SpectreLibsDir) je prázdná nebo spectre\, $(PlatformShortName) je x86, , x64, arm, arm64, nebo arm64EC.
Vztahuje se na
Všechny verze nástroje MSBuild