PCL 在windows 下的配置(不需要Cmake)

来源:互联网 发布:ubuntu字体渲染 编辑:程序博客网 时间:2024/06/07 23:05
一、采用集成编译环境VS2010(不需要使用Cmake)
1、下载所需要的安装软件:首先安装:visual studio 2010;
然后下载安装:PCL-1.6.0-AllInOne-msvc2010-win32,下载地址:http://pointclouds.org/downloads/windows.html
再下载pcl-1.6.0-pdb-msvc2010-win32文件(地址同上),解压并将文件夹内所有文件复制粘贴到上一步安装好的PCL目录下的bin子文件夹(如              C:\ProgramFiles\PCL 1.6.0\bin)。
至此,PCL开发环境已经在window下配置好。
2、如何在VS2010环境下测试PCL开发环境是否配置好在不使用Cmake的条件下如何使用VS2010测试PCL开发环境是否安装成功。
测试例子:project_inliers.cpp, 这个源程序可以在网址:http://pointclouds.org/documentation/tutorials/project_inliers.php处下载到。
(1) 首先打开VS2010,新建一个VC++项目(win32控制台应用程序)。
(2) 将得到的project_inliers.cpp源程序拷贝覆盖到上面新建的VC++项目中的project_inliers.cpp内,注意保留原始的#include "stdafx.h",保存。
(3) 配置工程属性:项目(p)-->project_inliers属性--->在新打开的属性窗口中进行多项配置,包括“VC++目录”下的配置,debug模式下“链接器”中的配置具体如下:
(3.1)VC++目录--->包含目录--->添加:
C:\Program Files\PCL 1.6.0\include\pcl-1.6;
C:\Program Files\PCL 1.6.0\3rdParty\Boost\include;
C:\Program Files\PCL 1.6.0\3rdParty\Eigen\include;
C:\Program Files\PCL 1.6.0\3rdParty\FLANN\include;
C:\Program Files\PCL 1.6.0\3rdParty\Qhull\include;
C:\Program Files\PCL 1.6.0\3rdParty\VTK\include\vtk-5.8;
C:\Program Files\OpenNI\Include;
当然,为了表示的简单,我们也可以在打开VS2010建立工程项目之前先定义环境变量来简化此处的表达:
计算机-->属性-->高级系统设置-->环境变量-->系统变量-->新建,变量名PCL_ROOT,变量值:C:\Program Files\PCL 1.6.0。那么此时上面的包含路径表示可以改成:
$(PCL_ROOT)\include\pcl-1.6;
$(PCL_ROOT)\3rdParty\Boost\include;
$(PCL_ROOT)\3rdParty\Eigen\include;
$(PCL_ROOT)\3rdParty\FLANN\include;
$(PCL_ROOT)\3rdParty\Qhull\include;
$(PCL_ROOT)\3rdParty\VTK\include\vtk-5.8;
C:\Program Files\OpenNI\Include;

(3.2)VC++目录--->库目录--->添加:
C:\Program Files\PCL 1.6.0\lib;
C:\Program Files\PCL 1.6.0\3rdParty\Boost\lib;
C:\Program Files\PCL 1.6.0\3rdParty\FLANN\lib;
C:\Program Files\PCL 1.6.0\3rdParty\Qhull\lib;
C:\Program Files\PCL 1.6.0\3rdParty\VTK\lib\vtk-5.8;
C:\Program Files\OpenNI\Lib;

(3.3)链接器-->输入-->附加依赖项,添加:
opengl32.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_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
    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

3、此时按理说是可以编译通过并运行了,为了使得输出结果不是一闪而过,可以添加一条include语句:#include<windows.h>,然后在main函数return(0)之前添加一个语句:system("pause");最终得到运行结果:

0 0
原创粉丝点击