Linux/ubuntu下的boost库安装 jwybobo2007的专栏 博客频道 CSDN.NET

Linux/ubuntu下的boost库安装 - jwybobo2007的专栏 - 博客频道 - CSDN.NET

Linux/ubuntu下的boost库安装


分类:
boost相关


1663人阅读
评论(3)
收藏
举报

        我一直都没有写博客的习惯,最近正好在研究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/bo ost_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/ /;

 

原文地址:https://www.cnblogs.com/lexus/p/2592217.html