我正在尝试将Point Cloud Library与Visual Studio一起使用。我下载了一体式64位安装程序Visual Studio 10并安装了它们。但是现在我无法在Visual Studio 2010上运行它,我在官方页面上尝试了教程而没有运气。
我想在我的解决方案的属性中添加包含和lib位置,以及.lib文件。
我之前用opencv做过这个,但对于PCL,我不知道我要添加哪些文件和文件夹。
还有什么.dll文件我必须添加到系统变量的路径。
Cmake不起作用,我不想使用它。
答案 0 :(得分:20)
您必须在项目属性/配置属性/ VC ++目录/包含目录字段中将包含目录添加到项目中 - 在此处指定PCL/include
的路径目录和所有第三方包含目录(请参阅PCL/3rdParty
文件夹)
您必须在同一设置页面上添加库目录(库目录字段) - 在此处指定PCL/lib
目录和所有非标题的路径 - 仅第三方文集(即Boost,Flann,VTK)
您必须告诉链接器您将使用哪些库。这可以在项目属性/配置属性/链接器/输入/附加依赖性字段中完成。添加您正在使用的所有库。最有可能的是,如果您使用的是基本功能以外的任何功能,则需要pcl_common
,pcl_io
,pcl_visualization
以及其他一些功能。请注意将_release
库添加到您的发行版配置中,并将_debug
库添加到您的调试配置中(在您的情况下应该是64位配置)。
如果您打算同时使用这两种配置(调试和发布),请执行以上操作
将Be PCL/bin
文件夹添加到系统路径变量中(您无需添加特定的dll文件,只需添加文件夹)。
答案 1 :(得分:8)
首先,PCL和Visual Studio应该是相同的 版本,32位/ 64位。
您需要将以下内容添加到Include目录(C / C ++ \ 一般):
C:\Program Files\PCL 1.6.0\3rdParty\VTK\include\vtk-5.8; C:\Program Files\PCL 1.6.0\3rdParty\Qhull\include; C:\Program Files\PCL 1.6.0\3rdParty\FLANN\include; C:\Program Files\PCL 1.6.0\3rdParty\Eigen\include; C:\Program Files\PCL 1.6.0\3rdParty\Boost\include; C:\Program Files\PCL 1.6.0\3rdParty; C:\Program Files\PCL 1.6.0\include\pcl-1.6; C:\Program Files\OpenNI\Include; C:\Qt\4.8.0\include
C:\Program Files\PCL 1.6.0\3rdParty\VTK\lib\vtk-5.8; C:\Program Files\PCL 1.6.0\3rdParty\Qhull\lib; C:\Program Files\PCL 1.6.0\3rdParty\FLANN\lib; C:\Program Files\PCL 1.6.0\3rdParty\Boost\lib; C:\Program Files\PCL 1.6.0\lib; C:\Program Files\PCL 1.6.0\lib\$(Configuration); C:\Qt\4.8.0\lib; C:\Program Files\OpenNI\lib;
openNI.lib libboost_system-vc100-mt-gd-1_49.lib libboost_filesystem-vc100-mt-gd-1_49.lib libboost_thread-vc100-mt-gd-1_49.lib libboost_date_time-vc100-mt-gd-1_49.lib libboost_iostreams-vc100-mt-gd-1_49.lib pcl_common_debug.lib pcl_apps_debug.lib pcl_features_debug.lib pcl_filters_debug.lib pcl_io_debug.lib pcl_io_ply_debug.lib pcl_kdtree_debug.lib pcl_keypoints_debug.lib pcl_octree_debug.lib pcl_registration_debug.lib pcl_sample_consensus_debug.lib pcl_search_debug.lib pcl_segmentation_debug.lib pcl_surface_debug.lib pcl_tracking_debug.lib pcl_visualization_debug.lib vtkRendering-gd.lib QVTK-gd.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_cxx-gd.lib vtkNetCDF-gd.lib vtkpng-gd.lib vtkproj4-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 OpenGL32.Lib
答案 2 :(得分:5)
当然你可以在VS2013 / VS2012中使用PCL。
我在VS2012中使用PCL和OpenCV。
从源代码编译PCL并不容易,但“All-in-one installers (PCL + dependencies)”的PCL版本1.6.0有点旧(仅适用于VS2008,VS2010)。这是最新的PCL1.7.2 for VS2013“一体化安装程序(PCL +依赖项)”download(密码:706c)