我一直都没有写博客的习惯,最近正好在研究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. iframe的滚动栏问题:显示/隐藏滚动栏

    iframe 问题2008-01-22 16:37******   显示 iframe 内容 XHTML 1.0 Transitional 标准不能显示 <!DOCTYPE html PUBLI ...

  2. BZOJ 1096: [ZJOI2007]仓库建设( dp + 斜率优化 )

    dp(v) = min(dp(p)+cost(p,v))+C(v) 设sum(v) = ∑pi(1≤i≤v), cnt(v) = ∑pi*xi(1≤i≤v), 则cost(p,v) = x(v)*(s ...

  3. CodeForces 385C Bear and Prime Numbers 素数打表

    第一眼看这道题目的时候觉得可能会很难也看不太懂,但是看了给出的Hint之后思路就十分清晰了 Consider the first sample. Overall, the first sample h ...

  4. BNU 26579 Andrew the Ant 【蚂蚁】

    链接: http://www.bnuoj.com/bnuoj/problem_show.php?pid=26579 http://www.bnuoj.com/bnuoj/contest_show.ph ...

  5. Android之Camera控制拍照

    package com.android.xiong.cameratest; import java.io.File; import java.io.FileOutputStream; import j ...

  6. jsp生命周期和工作原理

    jsp的工作原理jsp是一种Servlet,但是与HttpServlet的工作方式不太一样.httpservlet是先由源代码编译为class文件后部署到服务器下的,先编译后部署.而jsp则是先部署后 ...

  7. HDOJ 1272 并查集 不相同父节点

    判断两点:1.任何2点的父节点不能相同->否则会导致2点间有多条通路2.所有点只有1个集合 存在一个小坑,就是第一次输入 0 0 的时候,应该输出 Yes , 否则会WA MY AC Code ...

  8. two sets of Qt binaries into the same process的解决办法

    突然出现了这样问题,吓死我,然后只是把原来编译好的app里面所有的东西删除再编译就好了. 如果删除后不行,可以试试后面的截图所说,反正我是没有试过的 Starting /Qtwork/build-te ...

  9. first-,second- and third-class value

    In computer science, a programming language is said to have first-class functions if it treats funct ...

  10. 大数据时代的 9 大Key-Value存储数据库

    在过去的十年中,计算世界已经改变.现在不仅在大公司,甚至一些小公司也积累了TB量级的数据.各种规模的组织开始有了处理大数据的需求,而目前关系型数据库在可缩放方面几乎已经达到极限. 一个解决方案是使用键 ...