BOOST에는 C++ 프로그래밍할 때 유용한 라이브러리가 많이 포함되어 있습니다.
라이브러리 중 일부는 표준에 포함되는 경우도 종종 있을 만큼 완성도나 안정성이 높은 편입니다.
리눅스에서 boost 라이브러리를 사용하여 개발하기 위한 방법을 알아보겠습니다.
1. 라이브러리 설치
선택사항이긴 하지만 최신 버전으로 설치하려면 아래 명령어를 실행합니다.
1) 저장소 추가
$ sudo add-apt-repository ppa:boost-latest/ppa
$ sudo apt update
2) 라이브러리 설치
$ sudo apt install libboost-all-dev # install 대신에 upgrade도 가능
정상적으로 설치가 완료되면 아래 폴더에 헤더 및 라이브러리를 확인할 수 있습니다.
/usr/include/boost
/usr/lib/x86_64-linux-gnu/
2. 직접 설치
직접 설치하기 위해서는 소스 파일을 다운로드해서 시스템에 맞게 컴파일하여 설치해야 합니다.
소스 파일은 boost 사이트에서 직접 다운로드하시거나 sourceforge에서 최신 버전으로 다운로드하시면 됩니다.
1) Boost.org: https://boostorg.jfrog.io/artifactory/main/release/
2) Boost.org(최신버전): https://www.boost.org/users/download/
2) Sourceforge.net: https://sourceforge.net/projects/boost/
$ sudo apt update
$ wget -c 'https://sourceforge.net/projects/boost/files/boost/1.80.0/boost_1_80_0.tar.bz2'
$
$ cd ~/Downloads
$ tar xvfj boost_1_80_0.tar.bz2
$ cd boost_1_80_0
$ ./boostrap.sh --prefix=/usr/ # or --prefix=/usr/local or omittable
$ ./b2 install
정상적으로 설치가 왼료되면 아래 폴더에 헤더 및 라이브러리를 확인할 수 있습니다.
/usr/local/include/boost
/usr/local/lib
3. 사용하기
CMake를 사용하여 boost 라이브러리를 사용하기 위해서는 아래 내용을 포함시켜 줍니다.
find_package(Boost 1.69 REQUIRED COMPONENTS regex)
include_directories(${Boost_INCLUDE_DIRS})
target_link_libraries(${PROJECT_NAME} ${Boost_LIBRARIES})
참고사이트
- boost 최신 설치
- C++에서 Boost ASIO를 사용하여 TCP 비동기(Unblocked) 통신 프로그래밍
- C++에서 Boost ASIO를 사용하여 TCP 동기화(Blocked) 통신 프로그래밍
- Boost C++ Libraries/Boost.Asio
- boost::asio::theradpool 예제
- C++ Thread Pool
- Boost.Asio 예제 - C++11 예제
- [C/C++] 혼새미로의 블로그 - Boost 주요 기능 정리
'Programming > Boost' 카테고리의 다른 글
Boost.Asio 란? (0) | 2022.09.06 |
---|---|
boost: 'pthread_condattr_setclock' error (0) | 2022.08.23 |