Linux编译和安装boost库

36 篇文章 0 订阅
9 篇文章 0 订阅

1. 下载boost安装包并解压缩

http://www.boost.org/下载boost的安装包,以boost_1_58_0.tar.gz为例
下载完成后进行解压缩:

tar zxvf boost_1_58_0.tar.gz

2.设置编译器和所选库

先进入解压缩后的目录:

cd boost_1_58_0

然后运行bootstrap.sh脚本并设置相关参数:

./bootstrap.sh --with-libraries=all --with-toolset=gcc

--with-libraries指定编译哪些boost库,all的话就是全部编译,只想编译部分库的话就把库的名称写上,之间用 , 号分隔即可,可指定的库有以下几种:

库名说明
atomic
chrono
context
coroutine
date_time
exception
filesystem
graph图组件和算法
graph_parallel
iostreams
locale
log
math
mpi用模板实现的元编程框架
program_options
python把C++类和函数映射到Python之中
random
regex正则表达式库
serialization
signals
system
test
thread可移植的C++多线程库
timer
wave

--with-toolset指定编译时使用哪种编译器,Linux下使用gcc即可,如果系统中安装了多个版本的gcc,在这里可以指定gcc的版本,比如--with-toolset=gcc-4.4

命令执行完成后看到显示如下即为成功:

Building Boost.Build engine with toolset gcc... tools/build/src/engine/bin.linuxx86_64/b2
Detecting Python version... 2.6
Detecting Python root... /usr
Unicode/ICU support for Boost.Regex?... not found.
Generating Boost.Build configuration in project-config.jam...

Bootstrapping is done. To build, run:

    ./b2

To adjust configuration, edit 'project-config.jam'.
Further information:

   - Command line help:
     ./b2 --help

   - Getting started guide: 
     http://www.boost.org/more/getting_started/unix-variants.html

   - Boost.Build documentation:
     http://www.boost.org/build/doc/html/index.html

3.编译boost

执行以下命令开始进行boost的编译:

./b2 toolset=gcc

编译的时间大概要10多分钟,耐心等待,结束后会有以下提示:

...failed updating 60 targets...
...skipped 21 targets...
...updated 663 targets...

4.安装boost

最后执行以下命令开始安装boost:

./b2 install --prefix=/usr

--prefix=/usr用来指定boost的安装目录,不加此参数的话默认的头文件在/usr/local/include/boost目录下,库文件在/usr/local/lib/目录下。这里把安装目录指定为--prefix=/usr则boost会直接安装到系统头文件目录和库文件目录下,可以省略配置环境变量。

安装完毕后会有以下提示:

...failed updating 60 targets...
...skipped 21 targets...
...updated 11593 targets...

最后需要注意,如果安装后想马上使用boost库进行编译,还需要执行一下这个命令:

ldconfig

更新一下系统的动态链接库

5.boost使用测试

以boost_thread为例,测试刚安装完的boost库是否能正确使用,测试代码如下:

#include <boost/thread/thread.hpp> //包含boost头文件
#include <iostream>
#include <cstdlib>
using namespace std;

volatile bool isRuning = true;

void func1()
{
    static int cnt1 = 0;
    while(isRuning)
    {
        cout << "func1:" << cnt1++ << endl;
        sleep(1);
    }
}

void func2()
{
    static int cnt2 = 0;
    while(isRuning)
    {
        cout << "\tfunc2:" << cnt2++ << endl;
        sleep(2);
    }
}

int main()
{
    boost::thread thread1(&func1);
    boost::thread thread2(&func2);

    system("read");
    isRuning = false;

    thread2.join();
    thread1.join();
    cout << "exit" << endl;
    return 0;
}

在编译程序时,需要加入对boost_thread库的引用:

g++ main.cpp -g -o main -lboost_thread

如果boost库的安装位置不是在系统目录下,则还需要在编译时加上-I和-L指定boost头文件和库文件的位置

编译成功后运行程序,利用boost实现的多线程任务正确运行:

func1:  func2:00

func1:1
        func2:1
func1:2
func1:3
        func2:2
func1:4
func1:5
        func2:3
func1:6
func1:7
        func2:4
func1:8
func1:9
        func2:5
func1:10
func1:11
        func2:6
func1:12
func1:13
        func2:7
func1:14
func1:15
        func2:8
func1:16

exit
  • 26
    点赞
  • 110
    收藏
    觉得还不错? 一键收藏
  • 15
    评论
### 回答1: 安装 Boost 可以让你在 Linux 系统上使用 Boost 提供的 C++ 。以下是在 Linux安装 Boost 的步骤: 1. 打开终端,使用以下命令安装 Boost 的依赖项: ``` sudo apt-get update sudo apt-get install build-essential ``` 2. 下载 Boost ,可以从官网(https://www.boost.org/users/download/)下载最新的版本。解压缩下载的文件,进入解压后的目录。 3. 在终端中进入 Boost 的目录,并运行以下命令: ``` ./bootstrap.sh --prefix=/usr/local ``` 这将启动 Boost 的构建系统,并将安装到 /usr/local 目录中。 4. 运行以下命令编译安装 Boost : ``` ./b2 sudo ./b2 install ``` 这将编译 Boost 并将其安装到 /usr/local/lib 和 /usr/local/include 目录中。 5. 确认 Boost 已经安装成功。在终端中输入以下命令,查看 Boost 的版本: ``` ldconfig -v | grep boost ``` 如果一切正常,应该可以看到安装Boost 的版本信息。 安装成功后,你就可以在 Linux 系统上使用 Boost 了。 ### 回答2: Boost是一个流行的C++,提供了许多有用的功能,例如数据结构、算法和多线程支持。在Linux安装Boost需要以下步骤: 第一步:下载Boost 到官网(https://www.boost.org/)下载最新版的Boost源代码(zip或tar.gz格式)。解压文件到本地目录。 第二步:编译Boost 打开终端,进入Boost源代码目录,运行以下命令开始编译: ./bootstrap.sh --prefix=/usr/local ./b2 其中--prefix指定了安装目录。 该命令将在源代码目录下生成一个bin目录,其中包含许多文件。由于Boost非常庞大,编译时间可能会很长。 第三步:安装Boost 运行以下命令安装Boost: sudo ./b2 install 此命令将安装Boost到指定的目录(默认为/usr/local/lib/)。如果需要安装到其他目录,可以用--prefix指定。 安装完成后,就可以在代码中使用Boost了。将需要使用的头文件路径和文件路径添加到代码编译选项中,即可开始使用Boost的各种功能。 ### 回答3: Linux Boost是一款开源C++,由C++标准的部分扩展而来,提供一系列的高效的数据结构和算法,能够使开发者更加轻松高效地编写C++程序。 安装Boost也比较简单,以下是详细的步骤: 1. 下载Boost 在官网上下载需要的版本:https://www.boost.org/users/download/ 下载完成后解压缩文件 2. 编译Boost 打开终端,进入Boost文件夹,输入以下命令: ./bootstrap.sh 3. 安装Boost 输入以下命令: sudo ./b2 install 等待安装完成即可。 安装完成后,测试安装是否成功,可以输入以下命令: #include <iostream> #include <boost/version.hpp> using namespace std; int main(){ cout << "Boost version:" << BOOST_VERSION << endl; return 0; } 编译运行后如果输出Boost版本号,则表示Boost已经安装成功。 以上就是Linux Boost安装的详细步骤,希望对大家有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值