如何在Ubuntu上安装Boost

我用的是Ubuntu,我想安装Boost。我试过

sudo apt-get install boost

但是没有这样的包裹。在Ubuntu上安装Boost的最佳方法是什么?

959310 次浏览

您可以使用apt-get命令(需要sudo)

sudo apt-get install libboost-all-dev

或者你可以打电话

aptitude search boost

找到你需要的包,并使用apt-get命令安装它们。

以使用boost::array为例在Ubuntu上安装Boost:

安装libboost-all-dev和aptitude:

sudo apt install libboost-all-dev


sudo apt install aptitude


aptitude search boost

然后将其粘贴到一个名为main.cpp的c++文件中:

#include <iostream>
#include <boost/array.hpp>


using namespace std;
int main(){
boost::array<int, 4> arr = \{\{1,2,3,4}};
cout << "hi" << arr[0];
return 0;
}

编译如下:

g++ -o s main.cpp

像这样运行它:

./s

项目输出:

hi1

获取所需的Boost版本。这是1.55版本,但你可以自由更改或手动下载:

wget -O boost_1_55_0.tar.gz https://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz/download
tar xzvf boost_1_55_0.tar.gz
cd boost_1_55_0/

获得所需的库,主要是icu支持boost::regex:

sudo apt-get update
sudo apt-get install build-essential g++ python-dev autotools-dev libicu-dev libbz2-dev libboost-all-dev

Boost的引导设置:

./bootstrap.sh --prefix=/usr/

然后用:

./b2

并最终安装:

sudo ./b2 install

实际上,在项目中使用Boost之前,你不需要“安装”或“编译”任何东西。您可以下载并提取Boost库到您机器上的任何位置,通常类似于/usr/local/

在编译代码时,只需通过-I指示编译器在哪里可以找到库。例如,g++ -I /usr/local/boost_1_59_0 xxx.hpp

获取所需的Boost版本。这是1.55,但你可以随意更改或手动下载(Boost下载页面):

wget -O boost_1_55_0.tar.gz https://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz/download
tar xzvf boost_1_55_0.tar.gz
cd boost_1_55_0/

获取所需的库,主要是支持boost::regex的icu库:

sudo apt-get update
sudo apt-get install build-essential g++ python-dev autotools-dev libicu-dev libbz2-dev 

Boost的引导设置:

./bootstrap.sh --prefix=/usr/local

If we want MPI then we need to set the flag in the user-config.jam file:

user_configFile=`find $PWD -name user-config.jam`
echo "using mpi ;" >> $user_configFile

找出物理核的最大数量:

n=`cat /proc/cpuinfo | grep "cpu cores" | uniq | awk '{print $NF}'`

Install boost in parallel:

sudo ./b2 --with=all -j $n install 

假设您已经设置了/usr/local/lib。如果没有,你可以把它添加到Ld库路径:

sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/local.conf'

Reset the ldconfig:

sudo ldconfig

Windows 10 Ubuntu应用程序via子系统的更新(也适用于标准Ubuntu):

你可能找不到包裹。如果你这样做了,不要害怕!PPA在这里!

sudo add-apt-repository ppa:boost-latest/ppa
sudo apt-get update

然后运行:

sudo apt-get install libboost-all-dev

在终端中输入以下命令安装libboost-all-dev

步骤1

更新包存储库并获取最新的包信息。

sudo apt update -y

步骤2

安装带有-y标志的包和依赖项。

sudo apt install -y libboost-all-dev
现在已经安装了libboost-all-dev 来源:# EYZ0 < / p >

你可以通过以下命令在ubuntu上安装boost:

# EYZ0

# EYZ0

首先试试以下方法:

$ sudo apt-get install libboost*

你可能会得到一个类似于下面的错误消息,就像我做的那样:

E: Unable to correct problems, you have held broken packages.

然后尝试安装下面的包:

$ sudo apt-get install libboost-all-dev

现在你可以使用Boost创建一个示例项目:

$ mkdir boost
$ cd boost/
$ cat > main.cpp &