天天看點

Linux便捷安裝boost

簡介

boost庫基本上必不可少的c++庫,它提供了大量經過驗證的程式例程,能夠直接用于生産項目。

但它的龐大的何種也讓人望而生畏,不過還好,隻需安裝一次,就可以充分享受便捷的果實。

版本

boost的官方網站:https://www.boost.org,可以檢視最新版本及豐富的例程。目前最新版本為1.72.0。

如果已經安裝,可以通過以下方式檢視版本資訊:

  1. 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
           
  1. 在安裝目錄下直接檢視

    boost/version.hpp

    檔案。
  2. 在安裝目錄直接檢視庫

    ls /usr/local/lib | grep boost

    ,字尾即為版本号。

安裝

如果還沒有,馬上安裝一個吧。

  1. 搜尋查找可安裝的庫:

    aptitude search boost

    (不需要root權限)
  2. 根據列出的庫選擇安裝,也可以直接全部安裝:

    sudo apt-get install libboost-all-dev

    (root權限)

醬紫。就可以開心地使用了。

注意,在Ubuntu 16.04發行版上,這樣預設安裝的包的版本是1.58,比較舊,但使用起來是沒有任何問題的。

如果想要安裝更新版本,就要手動安裝了,且看下文。

如果預設安裝的版本不符合預期,可以下載下傳安裝包安裝,以boost1.64為例。

  1. 下載下傳好安裝包(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/
           
  1. 解壓進入,依次執行:
  • (可選)檢視可用的庫:

    ./bootstrap.sh --show-libraries

  • 編譯,指定安培的路徑字首,如果出錯請看下面安裝依賴:

    ./bootstrap.sh --prefix=/usr/local

  • 安裝,等待即可:

    ./b2

  1. 可能需要安裝的依賴(我安裝時沒有需要)
# 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