[1. 개요]
Boost 라이브러리를 이용한 애플리케이션 개발을 위한
boost 라이브러리 설치 및 개발 환경 구축에 대한 내용을 기술한다.
소스코드 빌드를 통한 라이브러리 설치는 나중에 다루도록 한다.
[2. Windows]
boost 라이브러리 설치를 위해 아래 사이트에서 실행 파일을 다운받도록 한다.
https://sourceforge.net/projects/boost/files/boost-binaries/
실행파일이름은 아래와 같은 형식을 갖는다.
boost_{version}-msvc-{sdkversion}-{bit}.exe
sdk 버전은 visual studio 설치 시 확인 할 수 있는데 아래와 같다.
visual studio 2015 | v140 |
visual studio 2017 | v141 |
visual studio 2019 | v142 |
[3. Linux]
배포 버전에 맞게 apt 또는 yum 을 이용하여 설치하도록 한다.
- debian
> sudo add-apt-repository ppa:boost-latest/ppa
> sudo apt-get update
> sudo add-apt-repository --remove ppa:boost-latest/ppa
> sudo apt install libboost-all-dev
> sudo apt autoremove
> sudo apt install libboost1.73-dev
> sudo apt install libboost1.74-dev
>> update 안될 시, sudo apt remove --purge libboost* - redhat
=>
버전 확인
- dpkg -s libboost-dev | grep version
- cat /usr/include/boost/version.hpp | grep "BOOST_LIB_VERSION"
[4. cmake]
find_package
find_package(Boost
[version] [EXACT] # Minimum or EXACT version e.g. 1.67.0
[REQUIRED] # Fail with error if Boost is not found
[COMPONENTS <libs>...] # Boost libraries by their canonical name
# e.g. "date_time" for "libboost_date_time"
[OPTIONAL_COMPONENTS <libs>...]
# Optional Boost libraries by their canonical name)
) # e.g. "date_time" for "libboost_date_time"
Hints
- BOOST_ROOT (※)
> boost 라이브러리 설치 위치 prefix - BOOST_INCLUDEDIR
>보통 /include - BOOST_LIBRARYDIR
>보통 <prefix>/lib - BOOST_ADDITIONAL_VERSIONS
> 사용할 boost 라이브러리 버전 명시
> ex) 1.73.0 과 같은 형태
Other variables
- Boost_USE_MULTITHREADED
> Default is ON
> OFF 로 설정 시 non-multithread 라이브러리를 사용 함
> 따로 수정하지 않는 게 좋다. - Boost_USE_STATIC_LIBS (※)
> Default is OFF
> ON 으로 설정 시 정적 라이브러리를 사용 할 것 을 강제함
> Window인 경우 바이너리 사이즈가 커지더라도, ON 으로 사용하는 것이 더 좋아보임.
Result variables
- Boost_FOUND
> boost 헤더 및 라이브러리 발견 시 True - Boost_INCLUDE_DIRS
- Boost_LIBRARY_DIRS
- Boost_LIBRARIES
- Boost_<COMPONENT>_LIBRARY
- Boost_VERSION
※ Windows 사용 시 주의 사항 ※
Window 에서 Visual Studio 를 대상으로 할 경우 cmake 수행 전 아래와 같은 사전 작업 사항이 필요하다.
(아래는 boost 라이브러리가 x64 용인 것을 대상으로 함)
- 사용 할 boost 에 적합 한 SDK 를 사용 하는 Visual studio 설치 경로에서 vcvars64.bat 호출
- cmake generator 명시 (-G 옵션)
- BOOST_ROOT 명시 (-DBOOST_ROOT)
- CMAKE_GENERATOR_PLATFORM 명시 (-DCMAKE_GENERATOR_PLATFORM=x64)
리눅스 인 경우 /usr 밑에 boost 가 설치되지 않은 경우, 3번 사항을 준수하도록 해야 한다.