如何在Visual Studio 2010中使用Boost

8 浏览
0 Comments

如何在Visual Studio 2010中使用Boost

如何在Visual Studio的空项目中逐步解释使用Boost库?

0
0 Comments

问题的原因:

问题是用户想要在Visual Studio 2010中使用Boost,但遇到了一些困难。

解决方法:

用户可以尝试使用"-j%NUMBER_OF_PROCESSORS%"作为参数,这将使用所有的处理器核心。对于四核处理器来说,这样做会使编译速度非常快。

对于VS2015,可以尝试以下命令来解决问题:

b2 -j%NUMBER_OF_PROCESSORS% toolset=msvc-14.0 --build-type=complete --libdir=C:\Boost\lib\x64 architecture=x86 address-model=64 install

对于powershell,可以使用以下命令来解决问题:

-j"$env:NUMBER_OF_PROCESSORS"

0
0 Comments

如何在Visual Studio 2010中使用Boost

如果你想在Visual Studio 2010中使用Boost库,下面是一份简化的指南,同时还包括了构建64位库的步骤。

只有在你需要使用Boost网站指南第3节中提到的库时才需要这样做(例如,使用Boost.Filesystem需要进行编译)。如果你不使用这些库,只需解压缩即可使用。

构建32位库:

1. 解压缩Boost到一个新的目录。

2. 打开32位MSVC命令提示符,并转到解压缩的Boost目录。

3. 运行:bootstrap

4. 运行:b2 toolset=msvc-10.0 --build-type=complete --libdir=C:\Boost\lib\i386 install

- 对于Visual Studio 2012,使用toolset=msvc-11.0

- 对于Visual Studio 2017,使用toolset=msvc-14.1

5. 将C:\Boost\include\boost-(version)添加到你的包含路径中。

6. 将C:\Boost\lib\i386添加到你的库路径中。

构建64位库:

1. 解压缩Boost到一个新的目录。

2. 打开64位MSVC命令提示符,并转到解压缩的Boost目录。

3. 运行:bootstrap

4. 运行:b2 toolset=msvc-10.0 --build-type=complete --libdir=C:\Boost\lib\x64 architecture=x86 address-model=64 install

- 对于Visual Studio 2012,使用toolset=msvc-11.0

5. 将C:\Boost\include\boost-(version)添加到你的包含路径中。

6. 将C:\Boost\lib\x64添加到你的库路径中。

如果你不想自己构建库文件,你可以从sourceforge下载预编译的二进制文件。在每个Boost版本中,都有适用于每个Visual Studio版本(32位和64位)的安装程序。

为什么在进行64位构建时使用architecture=x86而不是architecture=x64?编辑:刚刚发现这个问题,你不能将其切换为64位...

嗨,我访问了你提供的链接,但是对于v1.4.7版本,我发现了太多文件,我应该使用哪一个?如果有一个适用于所有Boost函数用法的单个文件(库/动态链接库)不是更好吗?

请尝试sourceforge.net/projects/boost/files/boost-binaries/old-monolithic/,你应该能够找到其中一个版本为1.47.0的安装程序,具体取决于你是否需要32位或64位版本。在里面你会找到很多DLL文件,这就是Boost的工作原理。但是,只要你将Visual Studio项目指向正确的目录,里面有多少个DLL文件并不重要,因为它会自动选择所需的正确文件。

0
0 Comments

如何在Visual Studio 2010中使用Boost

在Stack Overflow上的Nate的回答已经很好了,但我将进一步扩展它,特别是针对Visual Studio 2010,并包含有关编译各种可选组件所需的外部库的信息。

如果您使用的是仅有头文件的库,那么您需要做的就是解压缩Boost下载并设置环境变量。下面的说明仅适用于Visual Studio,而不是整个系统。请注意,您只需要执行一次。

1. 将最新版本的Boost(写作时为1.47.0)解压缩到您选择的目录中(例如C:\boost_1_47_0)。

2. 在Visual Studio中创建一个新的空项目。

3. 打开Property Manager并展开所选平台的其中一个配置。

4. 选择并右击Microsoft.Cpp..user,选择Properties以打开属性页进行编辑。

5. 在左侧选择VC++ Directories。

6. 编辑Include Directories部分,将路径添加到Boost源文件的路径中。

7. 如果需要,重复第3-6步以设置不同平台的环境变量。

如果您想要使用需要构建的Boost的部分,但不需要外部依赖项的功能,则构建过程相当简单。

1. 将最新版本的Boost(写作时为1.47.0)解压缩到您选择的目录中(例如C:\boost_1_47_0)。

2. 启动所选平台的Visual Studio命令提示符,并导航到Boost所在的位置。

3. 运行bootstrap.bat来构建b2.exe(以前命名为bjam)。

4. 运行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。

进行一次散步/看一两部电影/...。

8. 根据上述说明执行第2-6步以设置环境变量。

9. 编辑Library Directories部分,将路径添加到Boost库的输出路径中(上述示例和说明的默认路径为C:\boost_1_47_0\stage\lib)。如果希望同时使用x86和x64版本,请先重命名和移动目录(例如\lib\x86和\lib\x64)。

10. 如果需要,重复第2-6步以设置不同平台的环境变量。

如果您需要使用可选组件,则需要做更多的工作。这些组件包括:

- Boost.IOStreams Bzip2 filters

- Boost.IOStreams Zlib filters

- Boost.MPI

- Boost.Python

- Boost.Regex ICU support

Boost.IOStreams Bzip2 filters:

1. 将最新版本的bzip2库(写作时为1.0.6)源文件解压缩到您选择的目录中(例如C:\bzip2-1.0.6)。

2. 按照上述第二组说明构建Boost,但在运行第5步的b2时添加选项-sBZIP2_SOURCE="C:\bzip2-1.0.6"。

Boost.IOStreams Zlib filters:

1. 将最新版本的zlib库(写作时为1.2.5)源文件解压缩到您选择的目录中(例如C:\zlib-1.2.5)。

2. 按照上述第二组说明构建Boost,但在运行第5步的b2时添加选项-sZLIB_SOURCE="C:\zlib-1.2.5"。

Boost.MPI:

1. 安装MPI发行版,例如Microsoft Compute Cluster Pack。

2. 按照上述第二组说明的步骤1-3构建Boost。

3. 在运行bootstrap后的目录中的project-config.jam文件中添加一行using mpi;(注意分号前面的空格)。

4. 按照上述第二组说明的其余步骤构建Boost。如果自动检测MPI安装失败,则需要查找并修改适当的构建文件以在正确位置查找MPI。

Boost.Python:

1. 安装Python发行版,例如ActiveState's ActivePython。确保Python安装在您的PATH中。

2. 要完全构建库的32位版本,需要32位Python,同样适用于64位版本。如果您安装了多个版本,请编辑运行bootstrap后的目录中的project-config.jam文件,在其中添加以下两行,根据您的Python安装路径和版本进行适当的调整(注意分号前面的空格):

using python : 2.6 : C:\\Python\\Python26\\python ;

using python : 2.6 : C:\\Python\\Python26-x64\\python : : : 64 ;

请注意,这样明确指定Python版本可能会导致MPI构建失败。因此,如果同时构建MPI,您需要分别进行带有和不带有规范的构建。

3. 按照上述第二组说明构建Boost。

Boost.Regex ICU support:

1. 将最新版本的ICU4C库(写作时为4.8)源文件解压缩到您选择的目录中(例如C:\icu4c-4_8)。

2. 打开\source\allinone中的Visual Studio解决方案。

3. 为所选平台的调试和发布配置进行全部构建。最近的ICU4C版本在使用Visual Studio 2010进行调试和发布构建时可能会遇到问题,因为调试和发布构建的输出位于同一个目录中(这是默认行为)。一个可能的解决方法是先进行全部调试构建,然后在第二个配置(例如发布构建)中进行全部重新构建。

4. 如果要构建x64版本,您需要运行x64操作系统,因为后续构建步骤涉及运行一些64位应用程序。

5. 可选地,在完成后删除源目录。

6. 按照上述第二组说明构建Boost,但在运行第5步的b2时添加选项-sICU_PATH="C:\icu4c-4_8"。

如果您遇到以下错误信息:boost error: msvc initialization: parameter 'version' inconsistent,您只需使用--toolset=msvc而不指定版本号。

对于Visual Studio 2019,请运行b2 --toolset=msvc-14.2 --build-type=complete architecture=x86 address-model=64 stage

如果您想要同时使用x64和win32版本,请将"--stagedir=lib/win32"和"--stagedir=lib/x64"添加到各自的构建中。

关于如何构建和配置Visual Studio 2010的Boost的视频教程,请参考以下链接:[youtube.com/watch?v=5AmwIwedTCM](http://www.youtube.com/watch?v=5AmwIwedTCM)。

0