安裝--boost庫(C++)
阿新 • • 發佈:2020-08-08
注:apt-catche search和 apt-get的方法也可以直接安裝,不過版本未必最新,因而這裡選擇原始碼編譯安裝。
官網下載原始碼壓縮包&解壓
下載哪種 unix 壓縮包都可
tar -zxvf 包名 解壓(也可右鍵手動萬能解壓)
我是把這個解壓後的包移動到了 usr/local 下--不過好像也無所謂。。。
sudo mv [-fiv] source destination
關於boost包含的各種庫
Boost標頭檔案都以.hpp為字尾名,要詳細的瞭解Boost各種庫,可以開啟libs/index.html檔案。
大部分Boost庫,只需要包含它的.hpp檔案(包含了宣告和實現)即可,不需要編譯成二進位制庫檔案。
Boost.Chrono
Boost.Context
Boost.Filesystem
Boost.GraphParallel
Boost.IOStreams
Boost.Locale
Boost.MPI
Boost.ProgramOptions
Boost.Python (see the Boost.Python build documentation before building and installing it)
Boost.Regex
Boost.Serialization
Boost.Signals
Boost.System
Boost.Thread
Boost.Timer
下面這些庫是可選的,只有你在使用某些特定功能時才需要先編譯成二進位制庫檔案,具體哪些功能等碰到了再說,先簡單瞭解就行。
Boost.DateTime
Boost.Graph
Boost.Math
Boost.Random
Boost.Test
Boost.Exception
編譯安裝Boost
注意:編譯安裝boost前,得先安裝gcc,使用sudo apt-get install build-essential即可。
build-essential依賴於下面這些軟體包,所以安裝build-essential時,這些軟體也會被安裝,很方便。
|Depends: libc6-dev
Depends: libc6-dev
Depends: g++
Depends: make
Depends: dpkg-dev
使用命令apt-cache depends build-essential可以檢視依賴關係。
然後進入原始碼的根目錄,
編譯前需要配置,輸入下面的命令:
sudo ./bootstrap.sh
配置後會提示你使用b2(老版本是使用bjam編譯)編譯,開始編譯安裝,這裡選擇完全安裝,自定義安裝以後再研究,先不浪費時間在這些細節上,輸入命令:
sudo ./b2 install
編譯安裝完成後,會自動把boost標頭檔案拷貝到/usr/local/include/目錄下,庫檔案在/usr/local/lib/下。
測試
#include <boost/lexical_cast.hpp> #include <iostream> int main() { using boost::lexical_cast; int a = lexical_cast<int>("123"); double b = lexical_cast<double>("123.12"); std::cout<<a<<std::endl; std::cout<<b<<std::endl; return 0; }
編譯:
g++ -o test test.cpp
執行:
./test
輸出:
證明boost安裝成功。
參考:https://blog.csdn.net/laughing_cui/article/details/47755697?utm_source=blogxgwz7