我找到的一个方法,我配的pcl1.6,他的是1.5,依赖中多一个lib文件,我已经删了,可以配好,反正运行那几个例子是没问题的:
1.首先在http://www.pointclouds.org/downloads/windows.html下载windows的安装包。我用的是预编译版本的多合一包,需要自己编译的也可以。注意下载时要看清楚vs2010的版本是32位还是64位,不然一些库会找不到对应入口,导致编译不通过的。
tips:可以在开始菜单下的Microsoft Visual Studio 2010文件夹下,查看Microsoft Windows SDK Tools,如果看到程序后面(如IL反汇编程序)有(x64)字样,则vs是64位的,没有就放心安装32位版本吧。
如果是用cmake生成pcl解决方案,要注意在cmake的时候确定各个依赖库的路径,可以在对应项上把鼠标停留一下,看看有什么提示信息,特别是VTK的目录。有些时候能够继续生成,但是部分模块并没有设置好参数,会导致编译出来的PCL运行不良好。
2.安装完毕后就测试一下PCL的效果吧,要注意项目对应的包含目录、库目录、库文件(LIB)和运行环境(DLL)。
用http://www.pointclouds.org/documentation/tutorials/pcl_visualizer.php#pcl-visualizer上面的例程试一试,新建工程,粘贴代码……
在包含目录下添加:
C:\Program Files\PCL
1.5.1\3rdParty\Boost\include;
C:\Program Files\PCL 1.5.1\3rdParty\Eigen\include;
C:\Program Files\PCL 1.5.1\3rdParty\Flann\include;
C:\Program Files\PCL 1.5.1\3rdParty\Qhull\include;
C:\Program Files\PCL 1.5.1\3rdParty\VTK\include\vtk-5.8;
C:\Program Files\OpenNI\Include;
C:\Program Files\PCL 1.5.1\include\pcl-1.5;
(对应自己机子上PCL的位置,如果为了CMAKE方便很多会放在根目录下。即C:\PCL)
在库目录下添加:
C:\Program Files\PCL
1.5.1\3rdParty\Boost\lib;
C:\Program Files\PCL 1.5.1\3rdParty\Qhull\lib;
C:\Program Files\PCL 1.5.1\3rdParty\Flann\lib;
C:\Program Files\PCL 1.5.1\3rdParty\VTK\lib\vtk-5.8;
C:\Program Files\PCL 1.5.1\lib;
C:\Program Files\OpenNI\Lib;
在附加依赖项上添加:
pcl_kdtree_debug.lib
pcl_io_debug.lib
pcl_search_debug.lib
pcl_segmentation_debug.lib
pcl_apps_debug.lib
pcl_features_debug.lib
pcl_filters_debug.lib
pcl_visualization_debug.lib
pcl_common_debug.lib
flann_cpp_s-gd.lib
libboost_system-vc100-mt-gd-1_47.lib
libboost_filesystem-vc100-mt-gd-1_47.lib
libboost_thread-vc100-mt-gd-1_47.lib
libboost_date_time-vc100-mt-gd-1_47.lib
libboost_iostreams-vc100-mt-gd-1_47.lib
openNI.lib
vtkalglib-gd.lib
vtkCharts-gd.lib
vtkCommon-gd.lib
vtkDICOMParser-gd.lib
vtkexoIIc-gd.lib
vtkexpat-gd.lib
vtkFiltering-gd.lib
vtkfreetype-gd.lib
vtkftgl-gd.lib
vtkGenericFiltering-gd.lib
vtkGeovis-gd.lib
vtkGraphics-gd.lib
vtkhdf5-gd.lib
vtkHybrid-gd.lib
vtkImaging-gd.lib
vtkInfovis-gd.lib
vtkIO-gd.lib
vtkjpeg-gd.lib
vtklibxml2-gd.lib
vtkmetaio-gd.lib
vtkNetCDF-gd.lib
vtkNetCDF_cxx-gd.lib
vtkpng-gd.lib
vtkproj4-gd.lib
vtkRendering-gd.lib
vtksqlite-gd.lib
vtksys-gd.lib
vtktiff-gd.lib
vtkverdict-gd.lib
vtkViews-gd.lib
vtkVolumeRendering-gd.lib
vtkWidgets-gd.lib
vtkzlib-gd.lib
这里要注意PCL引用到的其他库文件一定要加进去,VTK的库很多,而且依赖关系我看得很乱,所以为了方便就全加进去了。
如果没有加完整,很多信息提示错误的,之前忘了加一个什么库,导致很多error LNK2019,还让我重装了很多次……
注意库要对应debug和release版,debug后面一般都有-gd或者_debug的,看看就能分出来了。对应错了还会有error LNK:
error
XXXX.......
这时应该可以看到成功生成的信息了:
别着急运行,会发现还没做完的。
这样就真的能够运行了~泪奔啊,就这么几个步骤弄了半个星期,我这个SB!
运行结果
http://wenku.baidu.com/view/df796d3d87c24028905fc301
留言列表