如何在Visual Studio 2010中使用Boost

有关如何在Visual Studio 2010中的空项目中使用Boost库的一步一步的解释是什么?


虽然Nate的答案已经很不错了,但我会根据要求更加专门针对Visual Studio 2010进行扩展,并在各种可选组件中包含需要外部库的信息。

如果您只使用头文件库,那么您只需要解压缩下载并设置环境变量即可。 下面的指令仅为Visual Studio设置环境变量,而不是整个系统。 注意你只需要做一次。

  • 将最新版本的boost(写入时为1.47.0)解压到您选择的目录(例如C:boost_1_47_0 )。
  • 在Visual Studio中创建一个新的空项目。
  • 打开Property Manager并展开您所选平台的配置之一。
  • 选择并右键单击Microsoft.Cpp.<Platform>.user ,然后选择Properties打开属性页进行编辑。
  • 选择左侧的VC++ Directories
  • 编辑Include Directories部分以包含升压源文件的路径。
  • 根据需要重复步骤3 - 6选择不同的平台。
  • 如果您想使用需要构建的boost的部分,但没有任何需要外部依赖的功能,那么构建它非常简单。

  • 将最新版本的boost(写入时为1.47.0)解压到您选择的目录(例如C:boost_1_47_0 )。
  • 启动您所选平台的Visual Studio命令提示符并导航到提升的位置。
  • 运行: bootstrap.bat生成b2.exe(以前称为bjam)。
  • 运行b2:

  • Win32: b2 --toolset=msvc-10.0 --build-type=complete stage ;
  • x64: b2 --toolset=msvc-10.0 --build-type=complete architecture=x86 address-model=64 stage
  • 去散步/看电影或2 / ....

  • 通过上述指令集中的步骤2 - 6来设置环境变量。
  • 编辑Library Directories部分以包含boost库输出的路径。 (对于实施例和上述说明的默认将是C:boost_1_47_0stagelib重命名,如果你想通过侧具有86&64侧第一移动目录(如<BOOST_PATH>libx86<BOOST_PATH>libx64 )。
  • 根据需要重复步骤2 - 6选择不同的平台。
  • 如果你想要可选组件,那么你有更多的工作要做。 这些是:

  • Boost.IOStreams Bzip2过滤器
  • Boost.IOStreams Zlib过滤器
  • Boost.MPI
  • Boost.Python的
  • Boost.Regex ICU支持
  • Boost.Iostreams Bzip2过滤器:

  • 将最新版本的bzip2库(编写时为1.0.6)源文件解压缩到您选择的目录(例如C:bzip2-1.0.6 )。
  • 按照上述第二组指令构建boost,但在步骤5中运行b2时添加选项-sBZIP2_SOURCE="C:bzip2-1.0.6"
  • Boost.IOStreams Zlib过滤器

  • 将最新版本的zlib库(1.2.5编写)源文件解压缩到您选择的目录(例如C:zlib-1.2.5 )。
  • 按照上述第二组指令构建boost,但在步骤5中运行b2时添加选项-sZLIB_SOURCE="C:zlib-1.2.5"
  • Boost.MPI

  • 安装MPI发行版,例如Microsoft Compute Cluster Pack。
  • 按照上述第二组指令中的步骤1 - 3建立提升。
  • 在运行引导程序导致的目录<BOOST_PATH>中编辑文件project-config.jam 。 添加一行, using mpi ;读取using mpi ; (注意';'之前的空格)。
  • 按照上面第二组指令的其余步骤构建提升。 如果MPI安装的自动检测失败,那么您需要查找并修改相应的构建文件以在正确的位置查找MPI。
  • Boost.Python的

  • 安装一个Python发行版,比如ActiveState的ActivePython。 确保Python安装位于PATH中。
  • 要完全构建库的32位版本,需要32位Python,对于64位版本也是如此。 如果因为这种原因安装了多个版本,则需要告诉b2在哪里可以找到特定的版本以及何时使用哪个版本。 一种方法是编辑运行引导所产生的目录<BOOST_PATH>中的文件project-config.jam 。 添加以下两行,根据您的Python安装路径和版本进行调整(注意';'之前的空格)。

    using python : 2.6 : C:PythonPython26python ;

    using python : 2.6 : C:PythonPython26-x64python : : : <address-model>64 ;

    请注意,这样的显式Python规范目前会导致MPI构建失败。 因此,如果您正在构建MPI,那么您需要在有或没有规范的情况下做一些单独的构建来构建所有内容。

  • 按照上述第二组指令来建立提升。

  • Boost.Regex ICU支持

  • 将最新版本的ICU4C库(写入时为4.8)源文件解压缩到您选择的目录(例如C:icu4c-4_8 )。
  • <ICU_PATH>sourceallinone打开Visual Studio解决方案。
  • 为您所选平台的调试和发布配置构建全部。 当调试和发布版本的输出位于同一目录(这是默认行为)时,使用Visual Studio 2010构建ICU4C的最新版本可能会出现问题。 一个可能的解决方法是做一个Build All(调试版本说),然后在第二个配置(例如发布版本)中进行全部重建。
  • 如果要构建x64,则需要运行x64操作系统,因为后期构建步骤涉及运行构建的64位应用程序。
  • 完成后,可以选择删除源目录。
  • 按照上述第二组指令构建boost,但在步骤5中运行b2时添加选项-sICU_PATH="C:icu4c-4_8"

  • 虽然Boost网站上的说明很有帮助,但下面是一个精简版本,它也构建了x64库。

  • 如果您正在使用说明页面第3部分中提到的某个库,则只需执行此操作。 (例如,要使用Boost.Filesystem需要编译。)如果你没有使用这些,只需解压缩即可。
  • 构建32位库

    这将在C:Boostincludeboost-(version)下安装Boost头文件,并在C:Boostlibi386下安装32位库。 请注意,库的默认位置是C:Boostlib但如果您打算为多个体系结构构建,则需要将它们放在i386目录下。

  • 将Boost解压缩到一个新目录中。
  • 启动一个32位MSVC命令提示符并切换到解压缩Boost的目录。
  • 运行: bootstrap
  • 运行: b2 toolset=msvc-12.0 --build-type=complete --libdir=C:Boostlibi386 install

  • 对于Visual Studio 2012,请使用toolset=msvc-11.0
  • 对于Visual Studio 2010,请使用toolset=msvc-10.0
  • 对于Visual Studio 2017,请使用toolset=msvc-14.1
  • C:Boostincludeboost-(version)到包含路径中。

  • C:Boostlibi386到您的libs路径中。
  • 构建64位库

    这将在C:Boostincludeboost-(version)下安装Boost头文件,并在C:Boostlibx64下安装64位库。 请注意,库的默认位置是C:Boostlib但如果您打算为多个体系结构构建,则需要将它们放在x64目录下。

  • 将Boost解压缩到一个新目录中。
  • 启动64位MSVC命令提示符并切换到解压缩Boost的目录。
  • 运行: bootstrap
  • 运行: b2 toolset=msvc-12.0 --build-type=complete --libdir=C:Boostlibx64 architecture=x86 address-model=64 install
  • 对于Visual Studio 2012,请使用toolset=msvc-11.0
  • 对于Visual Studio 2010,请使用toolset=msvc-10.0
  • C:Boostincludeboost-(version)到包含路径中。
  • C:Boostlibx64到您的libs路径中。

  • 你也可以尝试-j%NUMBER_OF_PROCESSORS%作为参数,它将使用你所有的内核。 使我的四核处理速度超快。

    链接地址: http://www.djcxy.com/p/44181.html

    上一篇: How to use Boost in Visual Studio 2010

    下一篇: How to access Network Share from Raspberry Pi running IoT Core in UWP app