如何在Ubuntu上安装Boost

如何在Ubuntu上安装Boost,ubuntu,boost,Ubuntu,Boost,我在Ubuntu上,我想安装Boost。我试过了 sudo apt-get install boost 但没有这样的一揽子计划。在Ubuntu上安装Boost的最佳方法是什么?您可以使用apt-get命令(需要sudo) 或者你可以打电话 aptitude search boost 找到您需要的软件包,并使用apt get命令安装它们。在Ubuntu上安装Boost,并提供一个使用Boost::array的示例:: 安装libboost所有开发人员和智能: sudo apt install

我在Ubuntu上,我想安装Boost。我试过了

sudo apt-get install boost

但没有这样的一揽子计划。在Ubuntu上安装Boost的最佳方法是什么?

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

或者你可以打电话

aptitude search boost

找到您需要的软件包,并使用apt get命令安装它们。

在Ubuntu上安装Boost,并提供一个使用Boost::array的示例::

安装libboost所有开发人员和智能:

sudo apt install libboost-all-dev

sudo apt install aptitude

aptitude search boost
然后将其粘贴到一个名为Meal.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.gzhttps://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增压器1\u 55\u 0/
获取所需的库,主要是
icu
for
boost::regex
支持:

sudo-apt-get-update
sudo-apt-get-install-build-sential g++python开发人员自动工具开发人员libicu开发人员libbz2开发人员libboost所有开发人员
Boost的引导设置:

./bootstrap.sh --prefix=/usr/local
/bootstrap.sh--prefix=/usr/
然后使用以下工具构建它:

/b2
并最终安装它:

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


编译代码时,只需通过
-I
指示编译器在何处查找库。例如,
g++-I/usr/local/boost\u 1\u 59\u 0 xxx.hpp

获取所需的boost版本。这适用于1.55,但您可以自行更改或手动下载:

wget-O boost_1_55_0.tar.gzhttps://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增压器1\u 55\u 0/ 获取所需的库,主要库为icu for boost::regex支持:

sudo apt-get update sudo apt-get install build-essential g++ python-dev autotools-dev libicu-dev libbz2-dev 更新源 sudo-apt-get-install-build-essential g++python-dev-autotools-dev-libicu-dev-libbz2-dev Boost的引导设置:

./bootstrap.sh --prefix=/usr/local ./bootstrap.sh--prefix=/usr/local 如果需要MPI,则需要在user-config.jam文件中设置标志:

user_configFile=`find $PWD -name user-config.jam` echo "using mpi ;" >> $user_configFile user_configFile=`find$PWD-name user-config.jam` echo“使用mpi;”>>$user\u配置文件 查找物理核心的最大数量:

n=`cat /proc/cpuinfo | grep "cpu cores" | uniq | awk '{print $NF}'` n=`cat/proc/cpuinfo | grep“cpu核心”| uniq | awk'{print$NF}'` 并行安装增压器:

sudo ./b2 --with=all -j $n install sudo./b2--with=all-j$n安装 假设您已经安装了/usr/local/lib。如果没有,可以将其添加到LD库路径:

sudo sh-c'echo”/usr/local/lib“>>/etc/ld.so.conf.d/local.conf” 重置ldconfig:

sudo ldconfig
sudo ldconfig通过子系统更新Windows10 Ubuntu应用程序(也适用于标准Ubuntu):

您可能在查找包时遇到问题。如果你这样做了,就不要害怕!PPA来了

sudo add-apt-repository ppa:boost-latest/ppa
sudo apt-get update
然后运行:

sudo apt-get install libboost-all-dev

通过在终端中输入以下命令来安装libboost all dev

第一步

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

sudo apt update -y
步骤2

使用-y标志安装软件包和依赖项

sudo apt install -y libboost-all-dev
现在您已经安装了libboost-all-dev
来源:

您可以使用以下命令在ubuntu上安装boost:

sudo apt更新


sudo apt install libboost all dev

您以前有过boost的使用经验吗?我有过boost的编程经验,但没有安装经验。我自己从来没有尝试过,所以我不能说它是否易于使用(但在我看来,包管理器是最简单的方法)。我本应将此建议作为评论发布,但我不能对问题发表评论。使用apt get的一个缺点是它通常比最新的boost版本晚几个版本。从源代码构建和安装boost很容易,例如,不要使用打包版本的boost,现在在Ubuntu 16.04上是1.58,最新的稳定版本是1.67.0!请参阅下面的回复和我的评论:什么是libboost-all-dev?为什么我要在安装boost之前安装boost?另外,
/b2安装
应作为最终版本执行step@tbc0Boost现在的版本是1.59,而最新的PPA版本是1.55,因此从源代码构建是非常重要的relevant@TemplateRex我收回我的评论。我取消了我的否决票。请将链接更改为HTTPS;HTTP对二进制下载不安全:)行“boost::array arr={{1,2,3,4};”中有一个错误,它应该是“boost::array arr={1,2,3,4};”;我为什么要运行
智能搜索boost
?添加“这只适用于boost的头库。其余部分需要使用上述答案中描述的包管理器构建或安装。需要单独构建和安装的boost库如下:原子库、计时库、容器库、上下文库、协程库、协程库、日期时间库、异常库、文件系统库、图形库、图形并行库、iostreams库、区域设置库、日志库、数学库、mpi库、程序选项库、python库、随机库、正则表达式库、序列化库、信号库、系统库、测试库、线程库、计时器库、类型擦除库、,即使按照Elias Kouskoumvekakis的进一步说明修复此解决方案也不是一个好主意(除非您有充分的理由),因为包管理器添加了非常轻松地将Boost更新到新版本的功能(在Ubuntu中,只需
sudo-apt-update;sudo-apt-upgrade
即可将所有软件包升级到存储库中的最新版本)如果您找到了适用于Boost的软件包存储库,并且如果您愿意,可以非常轻松地从系统中删除Boost。手动方法使这些任务变得更加困难,因此您需要一个很好的理由来跳过软件包管理器的好处。此外,最好在本章中介绍在没有软件包管理器的情况下安装,包括必要的构建
sudo apt update -y
sudo apt install -y libboost-all-dev