• 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源码包中有配置脚本,直接用就可以:

    #sh ./bootstrap.sh

    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

  • 相关阅读:
    45 岁,还写代码吗?
    给你 8 个接私活的网站
    一文回顾 Java 入门知识(下)
    5 种前途迷茫的编程语言
    JVM 内存的结构模型、堆与堆栈原理、对象在内存中的结构
    mysql 索引是否能提高UPDATE,DELETE,INSERT 处理速度
    【诈尸】【游戏】多人联机游戏推荐
    250.统计同值子树
    366. 寻找二叉树的叶子节点
    156.上下翻转二叉树
  • 原文地址:https://www.cnblogs.com/djzny/p/4663483.html
Copyright © 2020-2023  润新知