# vcpkg 설치

# 개요

vcpkg는 C 또는 C++ 라이브러리를 설치해주고 관리해주는 유틸리티입니다. 오픈 소스 라이브러리를 빌드할 때 가끔 상당한 문제가 발생하기도 하는데요 vcpkg를 사용하면 자동으로 빌드해주는 장점이 있습니다.

vcpkg는 윈도우즈와 리눅스 그리고 맥에서도 사용할 수 있습니다. 다만 여기서는 윈도우즈를 중심으로 설명합니다. 사용법은 동일하기 때문에 크게 달라질 것은 없습니다.

# 준비 사항

  • Windos 10, 8.1, 7
  • Visual Studio 2015 Update 3 또는 이후 버전
  • git
  • CMake 3.12.4
    • 없으면 자동으로 설치되는 형식으로 변경된 듯
    • 최신 vcpkg는 필요한 버전을 알아서 설치합니다.

# 설치 및 설정

우선 vcpkg를 설치할 폴더를 선택합니다. git이 설치되어 있다면, 아래와 같이 터미널에 입력하고 엔터를 칩니다.

git clone https://github.com/Microsoft/vcpkg.git

선택된 폴더 밑에 vcpkg 폴더가 생겨납니다. 폴더를 이동해서 터미널에 아래와 같이 입력하여 소스를 빌드합니다.

D:\Work\vcpkg> bootstrap-vcpkg.bat

설치가 완료되면 아래 화면과 같이 표시됩니다.

아래의 명령을 실행하면 "Visual Studio"에서 설치된 라이브러리들을 자동으로 인식하게 됩니다. include나 library 경로를 지정하지 않아도 자동으로 인식하고 빌드됩니다.

D:\Work\vcpkg> vcpkg integrate install

# 라이브러리 검색 및 설치

설치된 라이브러리의 목록을 표시하는 명령입니다. 아직 설치된 것이 없기 때문에 아무것도 나타나지 않습니다.

D:\Work\vcpkg> vcpkg list

설치할 수 있는 라이브러리를 검색하는 명령입니다. search 다음에 입력된 키워드를 검색해서 관련된 자료를 보여줍니다.

D:\Work\vcpkg> vcpkg search ffmpeg

비교적 빨리 빌드되고 설치되는 curl을 설치해보겠습니다. 터미널에서 아래와 같이 입력하고 엔터를 칩니다.

vcpkg install curl

설치가 완료되면 아래 화면과 같이 표시됩니다.

# 한번에 설치하기

여러 라이브러리를 한 번에 설치하는 것도 가능합니다. "vcpkg install " 다음에 원하는 패키지를 공백으로 구분해서 나열하시면 됩니다.

아래는 파웨설 기준으로 작성한 예이며, 파워셀에서는 ./vcpkg.exe로 실행해야 합니다.

# 32비트 라이브러리 빌드의 예

./vcpkg.exe install boost-asio:x86-windows boost-scope-exit:x86-windows boost-filesystem:x86-windows
./vcpkg.exe install curl:x86-windows nlohmann-json:x86-windows wxwidgets:x86-windows crc32c:x86-windows
./vcpkg.exe install aws-sdk-cpp[s3]:x86-windows
./vcpkg.exe install ffmpeg:x86-windows
./vcpkg.exe install libjpeg-turbo:x86-windows sdl2:x86-windows
./vcpkg.exe install portaudio:x86-windows libsoundio:x86-windows
./vcpkg.exe install opencv4:x86-windows
1
2
3
4
5
6
7

# 64비트 라이브러리 빌드의 예

./vcpkg.exe install boost-asio boost-scope-exit boost-filesystem
./vcpkg.exe install curl nlohmann-json wxwidgets crc32c
./vcpkg.exe install aws-sdk-cpp[s3]
./vcpkg.exe install ffmpeg
./vcpkg.exe install libjpeg-turbo sdl2
./vcpkg.exe install portaudio libsoundio
./vcpkg.exe install opencv4
1
2
3
4
5
6
7