我一直都没有写博客的习惯,最近正好在研究linux下的开发(目前也只是粗粗的研究),且用到了boost库,就乘此机会写点什么,最起码记录一下我在安装boost的一些步骤,主要给和我一样的linux开发新手们提供点借鉴(当然如果看到这篇文档的话 ),作者(jwybobo2007)。

1.下载boost库

这个我就不说啥了,去官网看一下就能下到:www.boost.org ,现在的版本更新到了1.44

2.执行:sudo apt-get install build-essential

不为别的,就是把编译环境给安装好 ,包括gcc,g++等一些开发工具,反正我是这样搞的

3.解压boost库: tar -xvzf  boost-1_44.tar.gz

我在网上看过一些文章,基本上都说解压到 /usr/share目录下,其实只是为了方便而已,大家可以自行选择,我现在假定解压在/usr/share下面

4.编译bjam: /usr/share/boost_1_44_0/tools/jam/src/build.sh

这个程序用来编译boost库,命令执行完毕后生成bjam

5.将bjam拷贝至 /usr/share/boost_1_44_0/ 下

我是这么做的,或者你也可以拷贝到/usr/bin目录下

6.编译boost库: sudo ./bjam toolset=gcc --layout=tagged --build-type=complete stage

         bjam有很多编译参数,我就不介绍了,可以自己去查看资料,我执行的是完全编译。

编译前 不要忘记切换当前目录,命令执行完毕后,将会生成所有版本的库,并存储在: /usr/share/boost_1_44_0/stage下

此时我们已经完成了boost库编译工作了,接下来需要考虑调用问题

      1.在/usr/include/下生成一个boost库的include文件夹连接: ln -s /usr/share/boos t_1_44_0/boost /usr/include/boost

2.在/usr/lib/ 下生成所有boost编译出的lib库文件的对应连接,在/usr/share/boost_1_44_0/stage/lib新建脚本:Jamroot

#Jamroot脚本
local files = [ glob *.* ];
local curpath;
local install_lib_files = [ glob /usr/lib/*.* ];
local cmd;
local source_path;
local desc_path;
path-constant curpath : ./;
for local file in $(files)
{
    source_path = $(curpath)/$(file);
    desc_path = "/usr/lib/"$(file);
    cmd = "ln -s "$(source_path)" "$(desc_path);
    if $(desc_path) in $(install_lib_files)
    {
        ECHO $(desc_path)" is exists";
    }
    else
    {
        ECHO $(cmd);
        SHELL $(cmd);
    }
}

脚本是从网上copy的

另一种链接方法(我用的是这种):

切换到stage目录下,执行

sudo find $PWD/lib/*.* -type f -exec ln -s {} /usr/lib/ /;

作者:jwybobo2007

此文可随意转载,但请标明出处:http://blog.csdn.net/jwybobo2007/archive/2010/08/18/5822429.aspx

Linux/ubuntu下的boost库安装的更多相关文章

  1. Linux(ubuntu)下jdk&tomcat的安装

    1.下载相应版本的jdk及tomcat:sudo wget ${url} 2.解压: tar zxvf jdk-7u79-linux-x64.tar.gz​ tar zxvf apache-tomca ...

  2. Linux Ubuntu下Jupyter Notebook的安装

    Jupyter Notebook, 以前又称为IPython notebook,是一个交互式笔记本, 支持运行40+种编程语言. 可以用来编写漂亮的交互式文档. 安装步骤: pip install - ...

  3. Linux之Ubuntu下如何查看已安装的软件/库文件【摘抄】

    本文属于实用性质,且属于摘抄别处,出自:[Ubuntu 下如何查看已安装的软件](http://blog.csdn.net/m1205979825/article/details/40855583) ...

  4. Linux(Ubuntu)下MySQL的安装与配置

    转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...

  5. Opencv 2.4.9在Ubuntu下的配置与安装

    [原]Opencv 2.4.9在Ubuntu下的配置安装  Opencv 2.4.9在Ubuntu下的配置与安装 surgewong@gmail.com http://blog.csdn.net/su ...

  6. 在Ubuntu下编译Assimp库

    在Ubuntu下编译Assimp库 怎样在Ubuntu下编译Assimp库?这是我曾经编译成功后做的笔记,供參考. 1.去以下的站点去下载Assimp库: http://assimp.sourcefo ...

  7. 开源播放器 ijkplayer (五) :Linux/Ubuntu 下编译ijkplayer

    一.安装Git与yasm sudo apt-get install git sudo apt-get install yasm 二.下载和配置 SDK.NDK SDK一般开发时肯定都有的,NDK一般是 ...

  8. Ubuntu下deb包的安装方法 (zz)

    Ubuntu下deb包的安装方法 分类: Ubuntu10使用技巧 2010-10-11 23:49 42969人阅读 评论(3) 收藏 举报 ubuntudebdebianlinux deb是deb ...

  9. 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台

    最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...

随机推荐

  1. C++_01_入门

    一.类的定义 Person.h类声明 Person.cpp类实现 main.cpp主函数 二.命名空间的使用 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv ...

  2. ceph存储之查找对象

    对象存储(而非块存储): 要把对象存入ceph集群,客户端必须做到: 1.指定对象名 2.指定存储池 Ceph客户端检出最新集群运行图,客户端用CRUSH算法动态地计算出如何把对象映射到归置组.然后计 ...

  3. [Swust 549]--变位词(vector水过)

    Time limit(ms): 1000 Memory limit(kb): 65535   Description 输入N和一个要查找的字符串,以下有N个字符串,我们需要找出其中的所有待查找字符串的 ...

  4. Android 中 ListView Adapter getView 被多次调用问题 解决方法

    执行多次原因是因为每显示一个VIew,它都去测量view的高度,执行measure方法,导致getView执行多次. 解决方法是将 ListView 的 layout_width 设置为 fill_p ...

  5. 深入理解GCD ( 二 )

    转自@nixzhu的GitHub主页(译者:Riven.@nixzhu),原文<Grand Central Dispatch In-Depth: Part 2/2> 欢迎来到GCD深入理解 ...

  6. 树莓派做web服务器(nginx、Apache)

    一想到Linux Web服务器,我们首先想到的是: Apache + MySql + Php. Apache:是世界使用排名第一的Web服务器软件. 可以运行在几乎所有广泛使用的计算机平台上,由于其跨 ...

  7. qt5_qml_Opengl_shader 第一弹----------------------openglunderqml的简化及介绍

    最近得知opengl可以通过纹理贴图来渲染yuv的数据,这就免去了yuv-rgb,这个过程在arm上还是很耗时间的,于是就接触了opengl. 写这篇文章的目的是方便初学者使用qml来调用opengl ...

  8. 华为s5700 添加与删除vlan

    新建vlan 删除vlan ① 检查该VLAN下是否存在成员接口,使用如下命令:display vlan all② 如存在成员接口,则进入该接口视图,删除该成员,否则可略过此步骤,例如:interfa ...

  9. 纯CSS3实现常见多种相册效果

    本文包含 1.CSS3中2D转换和3D转换的介绍. 2.在相册中的应用实例. CSS3中的转换效果和动画效果十分强大好用,可以实现一些常见的动态效果. 如此一来,CSS3便可以代替许多jQuery的功 ...

  10. 在mac os 中安装 autoconf and automake

    转载地址:http://www.mattvsworld.com/blog/2010/02/install-the-latest-autoconf-and-automake-on-mac-os-10-6 ...