다음을 통해 공유


진단 코드 MSB8041

이 문서에서는 MSB8041 오류 코드에 대해 설명합니다.

메시지 내용

MSB8041: MFC/ATL Libraries are required for this project.

설명

이 오류는 프로젝트에 MFC(Microsoft Foundation Classs) 또는 ATL(Active Template Library)이 필요하지만 라이브러리를 찾을 수 없는 경우에 발생합니다. Visual Studio에서 C++ 워크로드를 설치할 때 MFC 및 ATL 라이브러리는 기본적으로 설치되지 않습니다.

해결 방법

빌드 도구 집합에 대한 올바른 버전의 MFC 및 ATL 라이브러리가 설치되어 있는지 확인합니다. 각 버전의 C++ 빌드 도구, 각 대상 플랫폼 및 Spectre 완화를 포함하거나 사용하지 않는 MFC 버전이 있습니다. 예를 들어 최신 v143 빌드 도구(x86 및 x64)용 C++ MFC 에는 최신 버전의 Visual Studio 2022(v143)에 대한 Spectre 완화가 없는 x86 및 x64 라이브러리가 있습니다. 지정된 버전의 Visual Studio 도구 집합에 최신 라이브러리를 사용하려면 비스펙터 빌드를 위한 최신 [버전] 빌드 도구용 C++ MFC ([대상])와 스펙터 완화 빌드를 위한 최신 [버전] 빌드 도구 스펙터 완화용 C++ MFC ([대상])가 필요합니다. 대상 플랫폼 아키텍처에 대한 올바른 옵션을 선택합니다. 다른 옵션은 이전 도구 집합의 특정 대상 지정 시나리오를 지원합니다. 자세한 내용은 MFC 라이브러리 버전을 참조하세요.

MFC 및 ATL 라이브러리 설치

  1. Visual Studio 설치 관리자를 엽니다.

  2. 사용하는 Visual Studio 버전 옆에 있는 수정 단추를 선택합니다.

  3. 대화 상자 맨 위에 있는 개별 구성 요소 탭을 선택합니다.

  4. 구성 요소 검색 상자에 MFC를 입력합니다.

  5. x86 또는 ARM64EC 같은 프로젝트 대상과 일치하는 MFC 구성 요소를 선택합니다. Spectre 대응을 활성화하여 프로젝트를 빌드할 경우, Spectre 대응 기능이 포함된 구성 요소를 선택합니다.

    대부분의 경우 최신 빌드 도구에 대한 MFC를 선택하려고 합니다. 조직 또는 프로젝트에 특정 이전 버전의 도구 집합이 필요할 수 있습니다. 설치하는 MFC 구성 요소의 버전, 대상 및 Spectre 완화가 빌드 중인 프로젝트에 필요한 도구 집합 버전, 대상 및 Spectre 완화와 일치하는지 확인합니다.

  6. 구성 요소 검색 상자에 ATL을 입력합니다.

  7. x86 또는 ARM64EC 같은 프로젝트 대상과 일치하는 ATL 구성 요소를 선택합니다. Spectre 대응을 활성화하여 프로젝트를 빌드할 경우, Spectre 대응 기능이 포함된 구성 요소를 선택합니다.

    대부분의 경우 최신 빌드 도구에 대한 ATL을 선택하려고 합니다. 조직 또는 프로젝트에 특정 이전 버전의 도구 집합이 필요할 수 있습니다. 설치한 ATL 구성 요소의 버전, 대상 및 Spectre 완화가 빌드 중인 프로젝트에 필요한 도구 집합 버전, 대상 및 Spectre 완화와 일치하는지 확인합니다.

  8. 수정을 선택하여 선택한 구성 요소를 설치합니다.

필요한 라이브러리 및 이진 파일을 설치하도록 Visual Studio를 수정하는 방법에 대한 자세한 내용은 Visual Studio 수정을 참조하세요.

고급 진단 살펴보기

자세한 빌드 문제 해결을 위해 다음 파일을 찾을 수 없는 경우 MSBuild 대상 $(VCToolsInstallDir)atlmfc\lib\$(_SpectreLibsDir)$(PlatformShortName)\mfcs140.lib의 C++ 빌드 프로세스에서 MSB8041 오류가 트리거됩니다. 속성은 환경($(VCToolsInstallDir))과 프로젝트 구성에서 비롯됩니다: $(_SpectreLibsDir)은 비어 있거나 spectre\, $(PlatformShortName), x86, x64, arm, arm64, 또는 arm64EC입니다.

적용 대상

MSBuild의 모든 버전