# 디버그

이 섹션에서는 앱이 시작되지 않는 문제, 느린 비디오 렌더링, 비디오 재생 성능 문제에 대한 세부 정보와 해결방법을 제공합니다.

## 앱이 실행되지 않거나 실행 도중 오류 발생

### DLL 누락 오류

- 문제: DLL 누락 오류(예: `MSVCP140.dll is missing` 또는 `VCRUNTIME140.dll not found`).
- 세부 정보: 이러한 오류는 애플리케이션이 실행에 필요한 런타임 라이브러리를 찾을 수 없다는 것을 나타냅니다. Microsoft Visual C++ 재배포 가능 패키지가 시스템에 설치되어 있지 않을 때 보통 이런 오류가 발생합니다. 해당 라이브러리가 없으면 애플리케이션이 실행되지 않거나 시작 시 오류가 발생합니다.
- 해결방법: x64, x86 및 Arm64용 재배포 가능 C++를 설치하세요. 이 패키지에는 애플리케이션을 정상적으로 실행하는 데 필요한 DLL 파일이 포함되어 있습니다.

* * *

### MSVC 빌드 오류

- 문제: MSVC 빌드 오류: `MSBuild error MSB8020: The build tools for ARM64EC (Platform Toolset = 'v143') can't be found`
- 세부 정보: “Desktop Development with C++ workload”가 설치되지 않은 경우, 개발자는 컴파일 과정에서 다음과 같은 여러 가지 문제에 부딪힐 수 있습니다.

> 
> 
> - 빌드 오류 - 오류 예시 - `MSBuild error MSB8020: The build tools for ARM64EC (Platform Toolset = 'v143') can't be found.` 이 오류는 필요한 도구 세트를 사용할 수 없음을 나타냅니다.
>     - 컴파일 오류 - 오류 예시 - `fatal error C1083: Can't open include file: 'iostream': No such file or directory.` 이 오류는 표준 C++ 라이브러리가 설치되어 있지 않으면 발생합니다.
>     - 런타임 오류 - 애플리케이션이 종속요소 누락이나 잘못된 구성으로 인해 실행되지 않을 수 있습니다.
- 해결방법: Visual Studio 2022(v17.4 이상)를 설치하고 “Desktop Development with C++” 같은 필수 워크로드가 설치되어 있는지 확인하세요. 이 설정은 Arm64EC용 애플리케이션을 개발하고 빌드하는 데 필요한 도구와 설정을 제공합니다.

* * *

### 주소 불일치, 링커 및 런타임 오류 해결

- 문제: 다양한 DLL 간에 내보낸 함수의 일관성이 부족하여 런타임에 앱 실행이 충돌하는 현상을 해결합니다.
- 세부 정보: Arm64EC용으로 빌드할 때 내보낸 함수에 `__declspec(hybrid_patchable)` 가 표시되지 않으면 개발자는 컴파일 및 런타임 시 다음과 같은 여러 문제에 직면할 수 있습니다.

> 
> 
> - 주소 불일치 - 함수 포인터 주소는 모듈에 따라 달라질 수 있으므로 신뢰할 수 없는 동작을 유발할 수 있습니다.
>     - 링커 오류 - DLL에서 가져온 함수의 주소가 일관적이지 않을 수 있으며, `LNK2019: unresolved external symbol` 또는 `LNK2001: unresolved external symbol` 같은 오류를 일으킬 수 있습니다.
>     - 런타임 오류 - 애플리케이션이 올바른 함수 주소를 찾지 못하고, 런타임 오류 및 충돌로 이어질 수 있습니다.
- 해결방법: Arm64EC용으로 빌드할 때는 내보낸 함수가 올바르게 표시되어 있는지 확인하세요. 예를 들어, 특별한 처리가 필요한 함수에는 `__declspec(hybrid_patchable)` 을 사용합니다.

* * *

### fatal error(치명적 오류) C1083

- 문제: 빌드 오류: Arm64EC용으로 컴파일할 때 `fatal error C1083: Can't open include file: 'arm_neon.h':  No such file or directory` 라는 메시지가 나타납니다.
- 세부 정보: 환경 변수 `CFLAGS` 및 `CXXFLAGS` 가 올바르게 설정되지 않으면, 개발자는 컴파일 과정에서 다음과 같은 여러 가지 문제에 직면할 수 있습니다:

> 
> 
> - 컴파일러 플래그 오류 - 컴파일러가 기본값 또는 잘못된 플래그를 사용할 경우, 빌드 오류로 이어질 수 있습니다.
>     - 빌드 오류 - 오류 예시 - ARM별 헤더가 포함되지 않은 경우 `fatal error C1083: Can't open include file: 'arm_neon.h': No such file or directory` 같은 오류가 발생할 수 있습니다.
- 해결방법: CMakePresets 구성 파일에서 환경 변수가 올바르게 설정되었는지 확인하세요. 예시:

> 
> 
> set CXXFLAGS=arm64EC
>         set CFLAGS=arm64EC
>         Copy to clipboard

* * *

### MSVC 링커 오류

- 문제: MSVC 링커 오류: `LINK : fatal error LNK1112: module machine type 'ARM64EC' conflicts with target machine type 'x64'`
- 세부 정보: 개발자가 잘못된 명령 프롬프트를 사용할 경우, 컴파일 과정에서 다음과 같은 여러 가지 문제에 부딪힐 수 있습니다.

> 
> 
> - 빌드 오류 - 오류 예시 - 환경에 제대로 설정되지 않은 경우 `cl.exe isn't recognized as an internal or external command, operable program or batch file` 같은 오류가 발생할 수 있습니다.
>     - 링커 오류 - 오류 예시 - Arm64EC용으로 컴파일된 객체 파일이 x64 링커 설정과 호환되지 않은 경우 `LINK : fatal error LNK1112: module machine type 'ARM64EC' conflicts with target machine type 'x64'` 같은 오류가 발생할 수 있습니다.
- 해결방법: Arm64EC용 소스 파일을 컴파일하고 연결하는 작업에 Arm64 개발자 명령 프롬프트를 사용하세요. 적절한 스위치를 사용하여 `cl` 및 `link` 명령어를 실행합니다.

> 
> 
> cl /arm64EC /c <args>
>         link /MACHINE:ARM64EC <args>
>         Copy to clipboard

* * *

### x64 cl.exe 사용 시 컴파일 오류

- 문제: Arm64EC 코드베이스에 x64 cl.exe를 사용하여 발생하는 MSVC 컴파일 오류
- 세부 정보: 개발자가 Arm64EC 컴파일에 x64 cl.exe를 사용할 경우, 다음과 같은 여러 가지 오류가 발생할 수 있습니다.

> 
> 
> - `cl.exe isn't recognized as an internal or external command, operable program or batch file.`
>     - > 
> > 
> > - 설명 - 이 오류는 x64 환경이 Arm64EC 환경에만 적용되는 /arm64EC 플래그를 인식하지 못하기 때문에 발생합니다.
> 
> 
> 
> 
> - `LINK : fatal error LNK1104: can't open file 'MSCOREE.lib'`
>     - - 설명 - 이 오류는 링커가 필요한 라이브러리를 찾을 수 없음을 나타냅니다. x64 환경에서는 이러한 라이브러리의 경로가 설정되지 않습니다.
> 
> - Arm64EC용으로 컴파일할 때 `fatal error C1083: Can't open include file: 'arm_neon.h': 해당 파일 또는 디렉토리 없음`
>     - - 설명 - 이 오류는 x64 환경에 Arm64EC 컴파일에 필요한 ARM 전용 헤더가 포함되어 있지 않기 때문에 발생합니다.
- 해결방법: `C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat arm64` 명령어를 실행하세요.

* * *

### 컴파일 오류 C1189

- 문제: 컴파일 오류:  `C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\emmintrin.h(24,1): error C1189: #error: this header should only be included through <intrin.h>`
- 세부 정보: 이 헤더는 x86 및 x64 아키텍처에만 적용되며 Arm64EC와 호환되지 않는 단일한 명령어, 여러 개의 데이터(SIMD) 내장 함수를 포함합니다. 이 헤더가 사용되면 개발자는 Arm64EC 컴파일 과정에서 다음과 같은 여러 가지 문제에 부딪힐 수 있습니다.

    - 컴파일 오류 - 오류 예시 - `C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\include\emmintrin.h(24,1): error C1189: #error: this header should only be included through <intrin.h>` 같은 오류는 이러한 헤더를 Arm64EC에 사용할 수 없기 때문에 발생할 수 있습니다.
    - 런타임 오류 - SIMD 명령어가 누락되거나 호환되지 않아 애플리케이션이 제대로 실행되지 않을 수 있습니다.
- 해결방법: `emmintrin.h, smmintrin.h, xmmintrin.h` 및 `tmmintrin.h` 의 모든 인스턴스를 `intrin.h` 로 바꿉니다. `intrin.h` 는 Arm64EC와 호환되는 내장 함수를 위한 일관된 인터페이스를 제공합니다.

    `intrin.h` 헤더 파일은 MSVC에서 사용 가능하며 별도로 다운로드할 필요가 없습니다. Microsoft C/C++ 컴파일러에 포함되어 있으며 `C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\<version>\include\intrin.h` 에서 찾을 수 있습니다. &lt;version&gt;을 시스템에 설치된 MSVC 도구의 구체적인 버전 번호로 바꿉니다.

* * *

### 그래픽 앱 실행 문제

- 문제: OpenCL 및 OpenGL과 관련된 그래픽 앱 실행 문제.
- 세부 정보: OpenCL 및 OpenGL 호환 팩이 설치되어 있지 않은 경우, 개발자는 애플리케이션 실행 도중 다음과 같은 여러 가지 문제에 부딪힐 수 있습니다.

> 
> 
> - 실행 오류 - 시작 도중 그래픽 애플리케이션이 실행되지 않거나 충돌할 수 있습니다.

- 해결방법: OpenCL 및 OpenGL 호환 팩을 [Microsoft Store](https://apps.microsoft.com/detail/9NQPSL29BFFF?hl=en-us&amp;gl=US&amp;ocid=pdpshare) 에서 다운로드하세요. 이 팩은 그래픽 애플리케이션이 WoS 기기에서 원활하게 실행되는 데 필요한 호환성 계층을 제공합니다.

* * *

### AVX 명령어 집합

- 문제: AVX 명령어 집합 지원이 필요한 애플리케이션을 실행하지 못함
- 세부 정보: 일부 애플리케이션에는 고급 벡터 확장(AVX) 명령어 집합 지원이 필요하며, 지원되지 않을 경우 개발자는 다음과 같은 여러 가지 문제를 겪을 수 있습니다.

> 
> 
> - 애플리케이션 오류 - AVX 명령어가 누락되어 실행 도중 애플리케이션이 충돌할 수 있습니다.
>     - 잘못된 동작 - 애플리케이션이 AVX 명령어에 기반한 특정 작업을 수행하지 못하거나 예상치 못한 동작을 수행할 수 있습니다.
- 해결방법: Windows Canary 릴리스로 전환하세요. Canary 빌드는 AVX 명령어의 하위 세트를 지원합니다. 즉, 모든 AVX 명령어가 아닌 일부 명령어에 대한 지원만 포함합니다. 따라서 잠재적인 해결방법은 제공할 수 있어도 완전한 기능은 보장되지 않을 수 있습니다. AVX와 관련된 문제를 해결해야 할 때 살펴볼 수 있는 옵션입니다.

* * *

## 비디오 내보내기 및 렌더링 작업 속도 저하

- 문제: 비디오 내보내기 및 비디오 렌더링이 수반되는 그래픽 애플리케이션의 경우, 내보내기 또는 렌더링 작업의 속도가 느려질 수 있습니다.
- 해결방법: 노트북을 성능 모드로 설정하여 속도를 높이세요. 이렇게 하려면 아래의 단계를 따릅니다.

> 
> 
> 1. 시작 메뉴 바로 가기에서 ‘Settings’로 이동하거나 ‘Windows’와 ‘I’를 함께 누릅니다.
>     2. ‘System’을 클릭한 후 ‘Power & battery’를 선택합니다.
>     3. ‘Power mode’로 표시된 옵션이 있는지 찾아보고 드롭다운 메뉴를 클릭합니다. 모드를 ‘Best performance’으로 설정합니다.

* * *

## 비디오 스트리밍 앱에서 하드웨어 가속을 활성화합니다.

- 문제: 비디오 스트리밍 앱에서 비디오 재생 성능 문제.
- 해결방법: 앱 설정을 확인하세요. 대부분의 비디오 스트리밍 앱에는 하드웨어 가속을 활성화하거나 비활성화할 수 있는 설정 메뉴가 있습니다. 비디오 재생, 성능 또는 고급 설정과 관련된 옵션을 찾아보세요. 하드웨어 가속을 활성화하면 GPU로 작업을 오프로드하고, CPU 사용을 줄이고, 더 원활한 시청 경험을 제공하여 비디오 재생 성능을 개선할 수 있습니다.

Last Published: Jan 13, 2026

[Previous Topic
참조](https://docs.qualcomm.com/bundle/publicresource/80-62010-1KO/topics/references.md) [Next Topic
AI 앱 개발](https://docs.qualcomm.com/bundle/publicresource/80-62010-1KO/topics/ai-app-development.md)