簡介
boost庫基本上必不可少的c++庫,它提供了大量經過驗證的程式例程,能夠直接用于生産項目。
但它的龐大的何種也讓人望而生畏,不過還好,隻需安裝一次,就可以充分享受便捷的果實。
版本
boost的官方網站:https://www.boost.org,可以檢視最新版本及豐富的例程。目前最新版本為1.72.0。
如果已經安裝,可以通過以下方式檢視版本資訊:
-
dpkg -S /usr/include/boost/version.hpp
$ dpkg -S /usr/include/boost/version.hpp
libboost1.58-dev:amd64: /usr/include/boost/version.hpp
- 它預設查找的是
,如果沒有安裝在這個目錄下,會報錯。/usr/include/boost/version.hpp
% dpkg -S /usr/include/boost/version.hpp
dpkg-query: no path found matching pattern /usr/include/boost/version.hpp
- 在安裝目錄下直接檢視
檔案。boost/version.hpp
- 在安裝目錄直接檢視庫
,字尾即為版本号。ls /usr/local/lib | grep boost
安裝
如果還沒有,馬上安裝一個吧。
- 搜尋查找可安裝的庫:
(不需要root權限)aptitude search boost
- 根據列出的庫選擇安裝,也可以直接全部安裝:
(root權限)sudo apt-get install libboost-all-dev
醬紫。就可以開心地使用了。
注意,在Ubuntu 16.04發行版上,這樣預設安裝的包的版本是1.58,比較舊,但使用起來是沒有任何問題的。
如果想要安裝更新版本,就要手動安裝了,且看下文。
如果預設安裝的版本不符合預期,可以下載下傳安裝包安裝,以boost1.64為例。
- 下載下傳好安裝包(boost_1_64_0.tar.gz)。
# 根據需要指定版本,可能下載下傳較慢
wget -O boost_1_64_0.tar.gz https://sourceforge.net/projects/boost/files/boost/1.64.0/boost_1_64_0.tar.gz/download
tar xzvf boost_1_64_0.tar.gz
cd boost_1_64_0/
- 解壓進入,依次執行:
- (可選)檢視可用的庫:
./bootstrap.sh --show-libraries
- 編譯,指定安培的路徑字首,如果出錯請看下面安裝依賴:
./bootstrap.sh --prefix=/usr/local
- 安裝,等待即可:
./b2
- 可能需要安裝的依賴(我安裝時沒有需要)
# ubuntu
sudo apt-get update
sudo apt-get install build-essential g++ python-dev autotools-dev libicu-dev build-essential libbz2-dev libboost-all-dev
# centos
yum -y install gcc gcc-c++ python python-devel libicu libicu-devel zlib zlib-devel bzip2 bzip2-devel
安裝完成後,檢視版本,就可以使用啦!
小結
boost庫博大精深,也有很多最佳實踐,使用簡單,c++11中已經融入了不少功能,更多功能掌握後再來分享。
參考資料
How to install Boost on Ubuntu