boost.asio学习笔记一、linux下boost库的安装
2017-04-20 10:08
489 查看
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46761029
学习开源库第一步就是编译安装好库,然后执行成功一个demo,然后才干进行之后的工作。
以下就来讲讲boost库在linux下的安装。
[mjf@localhost ~]$
tar -zxvf boost_1_55_0.tar.gz
[mjf@localhost boost_1_55_0]$ ./bootstrap.sh --prefix=/home/mjf/lib
[mjf@localhost boost_1_55_0]$ sudo ./b2 install
1.解压
2.生成bjam
上述命令能够带有各种选项,详细可參考帮助文档: ./bootstrap.sh --help。当中--prefix參数。能够指定安装路径。假设不带--prefix參数的话,默认路径是 /usr/local/include 和 /usr/local/lib,分别存放头文件和各种库。
(不带prefix的话,理论上不须要手动配置环境变量!)
3.编译,安装
这里是所有编译。
当然也能够选择仅仅编译一部分。选项 --with-<library> 仅仅编译指定的库,如输入--with-regex就仅仅编译regex库了。
编译完毕后,进行安装,也就是将头文件和生成的库,放到指定的路径(--prefix)下
bjam的一些经常使用的參数,列表例如以下:
4.配置环境变量
把/usr/mjf/lib/lib追加到动态链接库配置文件/etc/ld.so.conf中,然后直接执行ldconfig。
在/etc/profile增加下面两行:
BOOST_INCLUDE=/home/mjf/lib/include
export=BOOST_INCLUDE
BOOST_LIB=/home/mjf/lib/lib
export=BOOST_LIB
然后运行source /etc/profile让马上生效。
安装完毕。我们就来执行一个样例:
g++ -o test test.cpp -I$BOOST_INCLUDE -L$BOOST_LIB
./test
学习开源库第一步就是编译安装好库,然后执行成功一个demo,然后才干进行之后的工作。
以下就来讲讲boost库在linux下的安装。
[mjf@localhost ~]$
tar -zxvf boost_1_55_0.tar.gz
[mjf@localhost boost_1_55_0]$ ./bootstrap.sh --prefix=/home/mjf/lib
[mjf@localhost boost_1_55_0]$ sudo ./b2 install
1.解压
2.生成bjam
上述命令能够带有各种选项,详细可參考帮助文档: ./bootstrap.sh --help。当中--prefix參数。能够指定安装路径。假设不带--prefix參数的话,默认路径是 /usr/local/include 和 /usr/local/lib,分别存放头文件和各种库。
(不带prefix的话,理论上不须要手动配置环境变量!)
3.编译,安装
这里是所有编译。
当然也能够选择仅仅编译一部分。选项 --with-<library> 仅仅编译指定的库,如输入--with-regex就仅仅编译regex库了。
编译完毕后,进行安装,也就是将头文件和生成的库,放到指定的路径(--prefix)下
bjam的一些经常使用的參数,列表例如以下:
--build-dir=<builddir> | 编译的暂时文件会放在builddir里(这样比較好管理,编译完就能够把它删除了) |
--stagedir=<stagedir> | 存放编译后库文件的路径,默认是stage |
--build-type=complete | 编译全部版本号,不然仅仅会编译一小部分版本号,确切地说是相当于: variant=release, threading=multi;link=shared|static;runtime-link=shared |
variant=debug|release | 决定编译什么版本号(Debug or Release?) |
link=static|shared | 决定使用静态库还是动态库 |
threading=single|multi | 决定使用单线程还是多线程库 |
runtime-link=static|shared | 决定是静态还是动态链接C/C++标准库 |
--with-<library> | 仅仅编译指定的库。如输入--with-regex就仅仅编译regex库了 |
--show-libraries | 显示须要编译的库名称 |
把/usr/mjf/lib/lib追加到动态链接库配置文件/etc/ld.so.conf中,然后直接执行ldconfig。
在/etc/profile增加下面两行:
BOOST_INCLUDE=/home/mjf/lib/include
export=BOOST_INCLUDE
BOOST_LIB=/home/mjf/lib/lib
export=BOOST_LIB
然后运行source /etc/profile让马上生效。
安装完毕。我们就来执行一个样例:
#include <iostream> #include <boost/timer.hpp> using namespace std; int main() { boost::timer t; cout << "max timespan:"<<t.elapsed_max()/3600<<"h"<<endl; cout << "min tmiespan:"<<t.elapsed_min()<<"s"<<endl; cout<<"now time elapsed:"<<t.elapsed()<<"s"<<endl; return 0; }
g++ -o test test.cpp -I$BOOST_INCLUDE -L$BOOST_LIB
./test
相关文章推荐
- boost.asio学习笔记一、linux下boost库的安装
- Linux学习笔记:需求和安装
- linux系统管理学习笔记之三----软件的安装
- Boost库学习笔记 2.1 Boost时间与日期timer库
- boost::asio学习笔记 server端
- ARM&LINUX学习笔记(3)---安装交叉编译器
- Linux学习笔记:REHL AS4的上网配置,Http服务安装及配置,ftp服务的安装及配置
- Boost库学习笔记 1. Boost介绍和环境配置
- linux学习笔记-fedora 16 U盘安装
- boost asio io_service学习笔记
- 硬盘安装Fedoro6的步骤(Linux学习笔记)
- C++ 之Boost学习笔记--Linux下编程
- linux学习笔记之(三)---安装mysql5.5 (安装成功,但用不了,请高手指教)
- linux学习笔记一则(硬盘安装fedora9)
- boost asio io_service学习笔记
- linux_学习笔记_如何找到和安装软件
- Amlogic open linux 编译环境安装 ---学习笔记
- boost asio io_service学习笔记
- linux查看系统信息软件安装信息命令学习笔记
- linux 学习笔记 - php 环境安装与配置