Linux/ubuntu下的boost库安装
我一直都没有写博客的习惯,最近正好在研究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库安装的更多相关文章
- Linux(ubuntu)下jdk&tomcat的安装
1.下载相应版本的jdk及tomcat:sudo wget ${url} 2.解压: tar zxvf jdk-7u79-linux-x64.tar.gz tar zxvf apache-tomca ...
- Linux Ubuntu下Jupyter Notebook的安装
Jupyter Notebook, 以前又称为IPython notebook,是一个交互式笔记本, 支持运行40+种编程语言. 可以用来编写漂亮的交互式文档. 安装步骤: pip install - ...
- Linux之Ubuntu下如何查看已安装的软件/库文件【摘抄】
本文属于实用性质,且属于摘抄别处,出自:[Ubuntu 下如何查看已安装的软件](http://blog.csdn.net/m1205979825/article/details/40855583) ...
- Linux(Ubuntu)下MySQL的安装与配置
转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...
- Opencv 2.4.9在Ubuntu下的配置与安装
[原]Opencv 2.4.9在Ubuntu下的配置安装 Opencv 2.4.9在Ubuntu下的配置与安装 surgewong@gmail.com http://blog.csdn.net/su ...
- 在Ubuntu下编译Assimp库
在Ubuntu下编译Assimp库 怎样在Ubuntu下编译Assimp库?这是我曾经编译成功后做的笔记,供參考. 1.去以下的站点去下载Assimp库: http://assimp.sourcefo ...
- 开源播放器 ijkplayer (五) :Linux/Ubuntu 下编译ijkplayer
一.安装Git与yasm sudo apt-get install git sudo apt-get install yasm 二.下载和配置 SDK.NDK SDK一般开发时肯定都有的,NDK一般是 ...
- Ubuntu下deb包的安装方法 (zz)
Ubuntu下deb包的安装方法 分类: Ubuntu10使用技巧 2010-10-11 23:49 42969人阅读 评论(3) 收藏 举报 ubuntudebdebianlinux deb是deb ...
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...
随机推荐
- iOS中的图像处理(三)——混合运算
有时候,单独对一张图像进行处理是很难或者根本达不到我们想要的效果的.一个好的滤镜效果的诞生,往往要经过很多复杂步骤.细致微调.图片应用效果观察以及很多图层叠加. 我在JSWidget上发现了一些常用混 ...
- Erich Gamma
Erich Gamma是IBM的杰出工程师.他是Jazz项目的领头人之一,曾担任Eclipse的Java开发环境JDT项目的领导,目前是Eclipse的项目管理委员会成员.Erich也是经典书籍< ...
- 从数据库中,绑定JQuery Accordion控件---Repeater control
http://aspsnippets.com/Articles/jQuery-Accordion-example-in-ASPNet-using-C-and-VBNet.aspx 1. 添加JQuer ...
- AS3清空数组的四种方法
第一种最简单的方法是: var arr:Array = ["a", "b", "c", "d", "e&quo ...
- java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法
java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法 只需把这三个commons-pool.jar ...
- BZOJ 1978: [BeiJing2010]取数游戏 game( dp )
dp(x)表示前x个的最大值, Max(x)表示含有因数x的dp最大值. 然后对第x个数a[x], 分解质因数然后dp(x) = max{Max(t)} + 1, t是x的因数且t>=L -- ...
- Python获取并修改hosts
#!/usr/bin/env python #-*- coding: utf-8 -*- #谷歌host修改脚本 #author 坤子<root#pythonpy.com> #date 0 ...
- php language construct 语言构造器
isset和empty看起来像是函数,我们也经常把它当作函数一样使用,但是实际上,它们是语言构造器. php中的语言构造器就相当于C中的预定义宏的意思,它属于php语言内部定义的关键词,不可以被修改, ...
- The connection to adb is down, and a severe error has occured.问题解决
遇到问题描述: 运行android程序控制台输出 [2013-06-25 11:10:32 - MyWellnessTracker] The connection to adb is down, an ...
- 响应式设计:理解设备像素,CSS像素和屏幕分辨率
概述 屏幕分辨率.设备像素和CSS像素这些术语,在非常多语境下,是可互换的,但也因此easy在有差异的地方引起混淆,实际上它们是不同的概念. 屏幕分辨率和设备像素是物理概念,而CSS像素是WEB编程的 ...