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

 

      本文转自crazy_charles 51CTO博客,原文链接:http://blog.51cto.com/douya/1928261http://blog.51cto.com/douya/1928261 ,如需转载请自行联系原作者




相关文章
|
Linux 开发工具 git
【git】linux 编译安装最新版git
【git】linux 编译安装最新版git
327 0
|
Java Linux 开发工具
linux如何编译安装源码包软件
源码包软件是包含源代码的软件包,常见于Linux和BSD系统,如fcitx和Lumaqq。开源软件需满足源代码可见且有宽松许可,如GPL。安装源码包通常涉及解压、编译和安装步骤,使用`tar`命令解包,通过`./configure`, `make`, `make install`进行编译安装。软件源码允许定制和二次开发,但须遵循许可协议。安装前确保安装了必要的开发工具和库。对于perl和python程序,直接使用perl或python命令安装。推荐使用系统软件包管理工具如RPM、yum或apt进行管理,以简化流程。
703 0
|
Linux 应用服务中间件 PHP
Linux下搭建PHP环境-源码编译安装PHP7.2
Linux下搭建PHP环境-源码编译安装PHP7.2
840 0
|
Oracle 关系型数据库 MySQL
Oracle Linux 8.10 编译安装sysbench
Oracle Linux 8.10 编译安装sysbench
504 34
|
安全 关系型数据库 MySQL
Linux下安装mysql8.0(以tar.xz包安装--编译安装)
通过上述步骤,您完成了从下载、编译、安装到配置MySQL 8.0的全过程。此过程虽然较为复杂,但提供了对MySQL安装环境的完全控制,有助于满足特定的部署需求。在实际操作中,根据具体的系统环境,可能还需调整部分步骤或解决未预见的依赖问题。始终参考官方文档和社区资源,保持安装过程与最新版本的兼容性。
6550 68
|
关系型数据库 MySQL Linux
当你在Linux系统中编译安装MySQL数据库卡住了怎么办?
当你在Linux系统中编译安装MySQL数据库卡住了怎么办?
当你在Linux系统中编译安装MySQL数据库卡住了怎么办?
|
SQL 关系型数据库 MySQL
linux 上源码编译安装 PolarDB-X
linux 上源码编译安装 PolarDB-X
1568 6
linux 上源码编译安装 PolarDB-X
|
关系型数据库 MySQL Linux
centos linux mysql 5.5脚本全自动源码包 编译安装
centos linux mysql 5.5脚本全自动源码包 编译安装
249 0
|
关系型数据库 Linux PHP
linux 编译安装php7.2 实测!!
linux 编译安装php7.2 实测!!
463 0
|
Linux 编译器 C语言
QT编译安装QtMqtt子模块,Linux平台
QT编译安装QtMqtt子模块,Linux平台
866 0