OpenCV 3.2.0 CMake 빌드하기 1



VisualStudio 2017 에 OpenCV 라이브러리 사용할수 있도록 셋팅하는 것은 다음글에 적겠습니다.

이번글은 OpenCV 소스를 다운로드 하여 VisualStudio 2017 에서 사용할수 있도록 CMake 사용하는 법을 적도록 하겠습니다.


OpenCV 를 사용할때 대부분의 사용자분들은 빌드된 라이브러리만 사용하시면 됩니다.
하지만 내부적으로 소스를 일부 수정을 해야 할 경우가 생긴다면 빌드를 해야할 경우가 발생됩니다.

CMake를 사용합니다.
공식사이트는 다음과 같습니다.

사용하시는 윈도우가 32비트면 32비트버젼으로, 64비트면 64비트 버젼으로 다운로드 하시면 됩니다.






설치후 실행하면 아래와 같이 나옵니다.








아래와 같이 소스가 있는 위치, 빌드된 결과물이 저장될 폴더를 지정해줍니다.








소스폴더는 아래와 같은 폴더들이 있는 곳입니다.





빌드폴더는 그냥 생성하시면 됩니다~





이제 Configure 버튼을 눌러주세요~ 아래와 같은 화면이 나옵니다.
여기서 Visual Studio 15 2017 Win64 를 선택해주세요.
그리고 Finish 버튼~








아마도 Windows 10 기준에서는 문제가 없을것 같고, Visual Studio2017 이전버젼을 사용해도 문제가 없을것 같습니다.

Windows 7 + VisualStudio 2017 + CMake + OpenCV 3.2.0 조합일때 문제가 될 수도 있습니다.

뭔가 문제가 생기면 Fail 이 되고 CMakeError.log 파일이 생성됩니다. (빌드폴더 \CMakeFiles)

이 파일을 보면 어떤것이 문제가 있는지 설명되어 있습니다.

 Link:
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\bin\HostX86\x64\link.exe /ERRORREPORT:QUEUE /OUT:".\CompilerIdCXX.exe" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\CompilerIdCXX.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\CompilerIdCXX.lib" /MACHINE:X64 Debug\CMakeCXXCompilerId.obj
LINK : fatal error LNK1104: 'ucrtd.lib' 파일을 열 수 없습니다. [C:\_OpenCVTest\Out\CMakeFiles\3.8.0\CompilerIdCXX\CompilerIdCXX.vcxproj]
"C:\_OpenCVTest\Out\CMakeFiles\3.8.0\CompilerIdCXX\CompilerIdCXX.vcxproj" 프로젝트를 빌드했습니다(기본 대상). - 실패

빌드하지 못했습니다.




만약 이와 같은 에러가 발생된다면 

C:\Program Files (x86)\Windows Kits\10\Lib\10.0.14393.0\ucrt\x64
폴더에 있는 파일 네개를

C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64
폴더에 복사해주세요.
패스를 잡아주셔도 될것 같고..

아예 위 폴더들이 없다면 Widnows SDK 를 다운로드 하여 설치해주세요.




빌드가 완료되면 아래와 같은 화면이 나옵니다.







이제 Generate 버튼을 눌러주세요.
Build 폴더로 가시면 Visual Studio 2017 에서 사용할 파일이 생성되어 있는것을 보실수 있을 것입니다.





이제 Visual Studio 에서 사용할 소스가 준비 되었습니다~^^



댓글 없음:

댓글 쓰기