안녕하세요? 착한이입니다.
무더운 날씨에 잘 지내시는지요?
본 강좌에서는 Windows SDK 버전 차이로 인해서 발생하는 오류 해결 방법에 대해 알아 보겠습니다.
Windows 10 IoT Core용 UWP 프로그램을 개발하다 보면 Windows SDK의 버전 차이로 인해서
다음과 같은 Build 오류가 발생합니다.
"error MSB8036: The Windows SDK version 10.0.15063.0 was not found. ...."
"error MSB3774: Could not find SDK "WindowsIoT, Version=10.0.15063.0".
이러한 Build 오류를 해결하는 방법에 대해서 설명 하겠습니다.
먼저 Microsoft 사에서 제공하는 Windows 10 IoT Core 용 샘플 소스 코드를
http://www.github.com/ms-iot 에서 다운 받습니다.
CPP 예제와 CS 예제에 따른 해결 방법은 다음과 같습니다.
1. CPP(C++) 예제
Microsoft 사에서 제공하는 Windows 10 IoT Core 용 샘플 소스 코드를 다운 받으면
다음 그림과 같은 Blinky CPP 예제가 있습니다.
이 예제는 10.0.15063.0 버전의 Windows SDK로 되어 있습니다.
Visual Studio 2017로 Project를 열어서 Build 하게 되면 다음 그림과 같은 에러가 발생합니다.
제 PC에는 10.0.15063.0 버전의 SDK가 설치되어 있지 않기 때문에 Build 오류가 발생합니다.
10.0.15063.0 버전의 SDK가 없으니 설치를 하거나 변경하라는 오류 입니다.
설치를 하면 오류가 해결 되지만 모든 버전의 SDK를 설치할 수 없으니
설치된 SDK의 버전으로 변경해 주는 것이 좋습니다.
아래 방법으로 Windows SDK를 최신 버전 또는 설치된 버전으로 변경 가능합니다.
다음 그림과 같이 Project 를 선택하고 마우스 오른쪽 버튼 클릭 메뉴 중에
"Retarget Projects" 를 선택합니다.
또는 Project 메뉴에서 "Retarget Solution" 메뉴를 선택합니다.
Review Solution Actions 화면이 나타나면 Windows SDK Version과
Windows SDK Min. Version 을 선택하면 됩니다.
설치된 Windows SDK 의 버전을 보여 줍니다.
"OK" 버튼을 클릭하면 적용이 됩니다.
다시 Project 를 Build 해 봅니다.
아래 그림과 같이 Build 메뉴의 Build Solution 또는
Build Project명을 선택합니다.
Build가 성공할 수 있고 아래와 같은 에러가 발생할 수 있습니다.
사용한 예제에 따라서 다음과 같은 MSB3774 에러가 발생하게 됩니다.
"Could not find SDK "WindowsIoT, Version=10.0.15063.0" 과 같이 특정 버전의 SDK가 없다고
한다면 다음 그림과 같이 Project에서 Refereces 부분을 보시면 경고가 표시된 것을 알 수 있습니다.
해당 부분을 클릭한 후, 제거 합니다.
제거하게 되면 오류창이 나타는데 상관 없습니다.
여기까지 하신 후에 Build 하시면 아래와 같이 에러가 없을 확인할 수 있습니다.
2. CS(C#) 예제
CPP 에제와 같이 CS 예제도 Windows SDK 버전을 변경할 수 있습니다.
아래와 그림의 CS 예제를 Visual Studio 2017을 이용하여 Open 합니다.
Project가 열리면 다음 그림과 같이 Project Properties(속성창)으로 이동합니다.
마우스 오른쪽 클릭 메뉴에서 Properties 선택 또는 Projects 메뉴에서 Properties 선택합니다.
속성창이 나타나면 Application 항목에서
Targeting 부분에서 Target version과 Min version을 선택합니다.
Windows SDK 버전 선택을 마친 후에 Build 하면 에러 없이 컴파일 되는 것을 확인하실 수 있습니다.
여기까지 Windows 10 IoT Core 용 프로그램 개발 시에 Windows SDK 버전 차이로 인해
발생하는 Build 오류에 대해 해결 방법에 대해 알아 보았습니다.
Windows 10 IoT용 프로그램 개발 시에 참고 하시길 바랍니다.
그럼 즐거운 개발하시길 바랍니다.
감사합니다.
Windows 10 IoT Core와 Android 7.1 을 지원하는
WAD-A64 CPU 모듈의 사양은 다음과 같습니다.
1. CPU : Allwinner A64 (Cortex A53 - Max 1.2GHz) ARMv8
2. RAM : 2GB LPDDR3 (Max 6GB)
3. eMMC : 8GB (Max 128GB)
4. Nor Flash : 16MB(Max 128MB)
5. PMIC
6. Connector : SODIMM (204 Pins)
7. OS : Windows 10 IoT Core,
Android 7.1
Linux(Yocto)
8. Size : 67.6 x 32 mm