Linux下編譯安裝BOOST
標籤:
linux平臺下要編譯安裝除gcc和gcc-c++之外,還需要兩個開發庫:bzip2-devel 和python-devel,因此在安裝前應該先保證這兩個庫已經安裝:
#yum install gcc gcc-c++ bzip2 bzip2-devel bzip2-libs python-devel -y
然後是去官網下載原始碼包,地址
下載,解壓,按照如下步驟:
#tar xvzf boost_1_50_0.tar.gz
進入boost_1_50_0目錄:
#cd boost_1_50_0
然後是編譯安裝,boost原始碼包中有配置指令碼,直接用就可以:
# Building Boost.Build engine with toolset gcc... tools/build/v2/engine/bin.linuxx86_64/b2 Detecting Python version... 2.6 Detecting Python root... /usr Unicode/ICU support for Boost.Regex?... not found. Generating Boost.Build configuration in project-config.jam... Bootstrapping is done. To build, run: ./b2 To adjust configuration, edit ‘project-config.jam‘. Further information: - Command line help: ./b2 --help - Getting started guide: http://www.boost.org/more/getting_started/unix-variants.html - Boost.Build documentation: http://www.boost.org/boost-build2/doc/html/index.html
接下來就是編譯,重點關注是否編譯成功:
#./b2
然後就是漫長的等待,如果最後出現:
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
相關文章
- 【MySQL安裝】Linux下安裝MySQL(預編譯)MySqlLinux編譯
- Linux 環境下編譯安裝 RedisLinux編譯Redis
- 如何在Linux下編譯安裝MariaDBLinux編譯
- Linux 編譯安裝 PythonLinux編譯Python
- Linux編譯安裝NginxLinux編譯Nginx
- Linux下nginx編譯安裝教程和編譯引數詳解LinuxNginx編譯
- ffmpeg安裝之linux編譯安裝Linux編譯
- LevelDB C++教程: Linux下編譯與安裝C++Linux編譯
- Linux 編譯 安裝 PHP 7.3.1Linux編譯PHP
- Linux下編譯安裝nginx1.8.1伺服器Linux編譯Nginx伺服器
- PHP Linux安裝擴充套件(編譯安裝)PHPLinux套件編譯
- windows下編譯安裝thriftWindows編譯
- CentOS 下編譯安裝 NginxCentOS編譯Nginx
- CentOS 下編譯安裝 apacheCentOS編譯Apache
- Linux安裝boost、libevent、zlib、OpenSSL庫Linux
- linux源瑪包編譯安裝Linux編譯
- Linux下編譯安裝Mysql 5.5的簡單步驟Linux編譯MySql
- Ubuntu下安裝C++ boost庫UbuntuC++
- Windows下CMake編譯安裝OpenCVWindows編譯OpenCV
- linux-原始碼的編譯安裝和解除安裝Linux原始碼編譯
- CentOS 下編譯安裝 PHP7.2CentOS編譯PHP
- Windows下安裝編譯 Open Cascade 7.8.0Windows編譯
- Linux環境下, 原始碼編譯安裝詳解 (編譯CMake 3.15 和 gcc 5.3.0 為例)Linux原始碼編譯GC
- [Linux] RockyLinux 9 編譯安裝 davfs2Linux編譯
- 編譯安裝最新的Linux系統核心編譯Linux
- Linux環境PostGIS原始碼編譯安裝Linux原始碼編譯
- Windows下下載編譯boost庫Windows編譯
- LINUX下編譯TriangleLinux編譯
- Centos 7.6 下Mysql8.0.16編譯安裝CentOSMySql編譯
- CentOS下編譯安裝Python3教程CentOS編譯Python
- CentOS 7下編譯安裝Python3CentOS編譯Python
- 編譯安裝zabbix編譯
- 安裝編譯ffmpeg編譯
- Griffin編譯安裝編譯
- 編譯安裝nmon編譯
- swoole 編譯安裝編譯
- apache編譯安裝Apache編譯
- LNMP架構編譯安裝(Linux、Nginx、Mysql、PHP)LNMP架構編譯LinuxNginxMySqlPHP
- LINUX下編譯原始碼時所需提前安裝的常用依賴包列表Linux編譯原始碼