1. 概述
Boost库的安装的方法,IDE涉及DEV C++和VS 2008。
2. 下载
SVN下载链接,文件保存在“D:\Boost”下:参见网页 http://www.boost.org/users/download/,对于1.46版本的Boost,如果完全编译后,可能需要12-15GB的空间,虽然还没编译就占了3GB。
3. VS2008 Boost库编译(-vc9)
首先团烂,编译bjam,在命令行下,运行bootstrap.bat -vc9
然后,编译库。在命令行下,运行:
bjam stage --toolset=msvc-9.0 --without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave --stagedir="D:\Boost\bin\vc9" link=static runtime-link=shared threading=multi debug release
bjam stage --toolset=msvc-9.0 --without-graph --without-graph_parallel --without-math --without-mpi --without-python --without-serialization --without-wave --stagedir="D:\Boost\bin\vc9" link=static runtime-link=static threading=multi debug release
编译用了50分钟左右,产生了303MB的文件。
4. VS2008 Boost库配置
Tools ->Options ->Projects and Solutions ->VC++ Directories
在Library files中,增加D:\Boost\bin\vc9\lib
在Include files中,增加D:\Boost\
其中塌乱漏,Library的目录就是前面编译产生的那些库文件保存到陪告的位置
其中,Include的目录随着Boost的不同版本会不同,现在1.47版本只要指定为D:\Boost即使用SVN下载Boost的文件夹就可以了。
PCL(Point Cloud Library)是一个开源的点云处理库,它可以在多个 *** 作系统上运行,包括Windows、Linux和MacOS等。如果你在Windows系统上无法打开PCL,可能是因为你没有正确配置PCL的环境变量或者没有安装PCL的依赖库。以下是在Windows系统上运行PCL的一些常见问题和解决方法:
1. 缺少依赖库:PCL需要依赖一些第三方库,如Boost、Eigen等。你需银团要先安装这些库才能正常运行PCL。可以使用包管理器(如vcpkg)来安装这些依赖库。
2. 环境变量配置错误:PCL需要设置一些环境变量,如PCL_ROOT、Path等。如果环境变量设置不正确,PCL就无法正常运行。你可以在系统属性的高级选项中设置这些环境变量。
3. 编译错误:如果你正在编纤谈译PCL源代码,可能会遇到编译错误。这可能是因为你的编译环境不正确或者版本不匹配。你可以查看PCL的编译指南,按照指南进行编译。
总之,如果你无法打开PCL,可以先检查以上几个方面,看看是否有问题。如果还是无法解决,可以提供更详细的错误信息,让我们更好锋竖橘地帮助你解决问题。
一、 下载boost
boost_1_51_0.zip 下载并解压到C盘根文件夹
二、编译boost
1、生成生命行程序
执行bootstrap.bat
2、编译
执行b2.exe,完成后显示:
The Boost C++ Libraries were successfully built!
The following directory should be added to compiler include paths:
C:/boost_1_51_0
The following directory should be added to linker library paths:
C:\boost_1_51_0\stage\lib
三、使用boost
1、创建一个win32 console
2、引用bootst
C/C++ ->Additional Include Directories: C:\boost_1_51_0
Linker->Additional Library Directories: C:\boost_1_51_0\stage\lib
答早 Linker->Input->Additional Dependencies :libboost_signals-vc110-mt-gd-1_51.liblibboost_regex-vc110-mt-gd-1_51.lib
3、Code如下:
#include "stdafx.h"
#include <boost/regex.hpp>
#include <boost/signals.hpp>
#include <boost/lambda/lambda.hpp>
#include <iostream>
#include <卖中cassert>
struct print_sum {
void operator()(int x, int y) const { std::cout <<x+y <<std::endl}
}
struct print_product {
void operator()(int x, int y) const { std::cout <<x*y <<std::endl}
}
int _tmain(int argc, _TCHAR* argv[])
{
boost::signal2<void, int, int, boost::last_value<void>, std::string>sig
sig.connect(print_sum())
sig.connect(print_product())
sig(3, 5)
std::string line
boost::regex pat( "^Subject: (Re: |Aw: )*(.*)" )
while (std::cin)
{
std::getline(std::cin, line)
boost::smatch matches
if (boost::regex_match(line, matches, pat))
std::cout <<matches[2] <<std::endl
}
return 0
}
示例程序在vs2012下通过,输中举山出:
8
15
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)