标簽:
linux平台下要編譯安裝除gcc和gcc-c++之外,還需要兩個開發庫:bzip2-devel 和python-devel,是以在安裝前應該先保證這兩個庫已經安裝:
下載下傳,解壓,按照如下步驟:
進入boost_1_50_0目錄:
然後是編譯安裝,boost源碼包中有配置腳本,直接用就可以:
接下來就是編譯,重點關注是否編譯成功:
然後就是漫長的等待,如果最後出現:
The Boost C++ Libraries were successfully built! The following directory should be added to compiler include paths: /home/gang/BAK/boost_1_50_0 The following directory should be added to linker library paths: /home/gang/BAK/boost_1_50_0/stage/lib
最後,sudo ./b2 install --prefix=/usr/local
1、 boost中大部分庫是不用編譯成動态或者靜态連結庫。
2、 隻有regex,thread等幾個庫比較麻煩一點.要編譯。
3、 如果用gcc編譯器-l指定動态連結庫的路徑,還要指定頭檔案的路徑。
4、 或者連結的boost庫放到.c或.cpp之後,否則連結不能通過,編譯可以通過。
如下所示:g++ -lz -lpthread hh.c -lboost_filesystem -lboost_thread
5,
安裝完畢後的頭檔案預設是在/usr/local/include目錄下,.a和.so在/usr/local/lib目錄下。
然後将需要使用的庫sudo cp至/usr/lib 。不然在執行代碼時,ldd會提示找不到.so檔案。
./main: error while loading shared libraries: libboost_serialization.so.1.52.0: cannot open shared object file: No such file or directory
本文轉自crazy_charles 51CTO部落格,原文連結:http://blog.51cto.com/douya/1928261http://blog.51cto.com/douya/1928261,如需轉載請自行聯系原作者