- PCLをGitからクローンする。(C:\PCL-1.7.2)
https://github.com/PointCloudLibrary/pcl/tree/pcl-1.7.2
-
3rdPartyのライブラリをビルド、インストールする。
- Boost https://gist.github.com/UnaNancyOwen/d879a41710e9c05025f8#file-boost1-56-0-md
- Eigen https://gist.github.com/UnaNancyOwen/08e5a9b8f5979ed0077c
- FLANN https://gist.github.com/UnaNancyOwen/1e3fced09e4430ad0b7b
- QHull https://gist.github.com/UnaNancyOwen/ffbe6b05ee0101620d3c
- VTK https://gist.github.com/UnaNancyOwen/9d16060714ba9b28f90e#file-vtk6-md
-
3rdPartyのライブラリの環境変数を設定する。
- BOOST_ROOT C:\Program Files\Boost
- EIGEN_ROOT C:\Program Files\Eigen
- FLANN_ROOT C:\Program Files\flann
- QHULL_ROOT C:\Program Files\qfull
- VTK_ROOT C:\Program Files\VTK
-
ソースコードの入力先とソリューションファイルの出力先を指定する。
- Where is the source code: C:\PCL-master
- Where is build the binaries: C:\PCL-master\build
-
[Configure]を押してターゲットとなるVisual Studioを選択する。
-
各種設定を行う。
(GroupedとAdvancedにチェックを入れるとわかりやすい。)
Ungrouped Entries- EIGEN_INCLUDE_DIR C:\Program Files\Eigen\include\eigen3
- VTK_DIR C:\Program Files\VTK\lib\cmake\vtk-6.1
BUILD
- BUILD_OPENNI ☐(uncheck)
- BUILD_OPENNI2 ☐(uncheck)
- BUILD_all_in_one_installer ☐(uncheck)
- BUILD_apps ☐(uncheck)
- BUILD_common ☑(check)
- BUILD_example ☐(uncheck)
- BUILD_features ☑(check)
- BUILD_filters ☑(check)
- BUILD_geometry ☑(check)
- BUILD_global_tests ☐(uncheck)
- BUILD_io ☑(check)
- BUILD_kdtree ☑(check)
- BUILD_keypoints ☑(check)
- BUILD_outofcore ☑(check)
- BUILD_people ☑(check)
- BUILD_recognition ☑(check)
- BUILD_registration ☑(check)
- BUILD_sample_consensus ☑(check)
- BUILD_search ☑(check)
- BUILD_segmentation ☑(check)
- BUILD_surface ☑(check)
- BUILD_surface_on_nurbs ☑(check)
- BUILD_tools ☑(check)
- BUILD_tracking ☑(check)
- BUILD_visualization ☑(check)
Boost
- Boost_DATE_TIME_LIBRARY_DEBUG C:\Program Files\Boost\lib\libboost_date_time-vc120-mt-1_56.lib
- Boost_DATE_TIME_LIBRARY_RELEASE C:\Program Files\Boost\lib\libboost_date_time-vc120-mt-gd-1_56.lib
- Boost_FILESYSTEM_LIBRARY_DEBUG C:\Program Files\Boost\lib\libboost_filesystem-vc120-mt-1_56.lib
- Boost_FILESYSTEM_LIBRARY_RELEASE C:\Program Files\Boost\lib\libboost_filesystem-vc120-mt-gd-1_56.lib
- Boost_INCLUDE_DIR C:\Program Files\Boost\include\boost-1_56
- Boost_IOSTREAMS_LIBRARY_DEBUG C:\Program Files\Boost\lib\libboost_iostreams-vc120-mt-1_56.lib
- Boost_IOSTREAMS_LIBRARY_RELEASE C:\Program Files\Boost\lib\libboost_iostreams-vc120-mt-gd-1_56.lib
- Boost_MPI_LIBRARY_DEBUG C:\Program Files\Boost\lib\libboost_mpi-vc120-mt-1_56.lib
- Boost_MPI_LIBRARY_RELEASE C:\Program Files\Boost\lib\libboost_mpi-vc120-mt-gd-1_56.lib
- Boost_SERIALIZATION_LIBRARY_DEBUG C:\Program Files\Boost\lib\libboost_serialization-vc120-mt-1_56.lib
- Boost_SERIALIZATION_LIBRARY_RELEASE C:\Program Files\Boost\lib\libboost_serialization-vc120-mt-gd-1_56.lib
- Boost_SYSTEM_LIBRARY_DEBUG C:\Program Files\Boost\lib\libboost_system-vc120-mt-1_56.lib
- Boost_SYSTEM_LIBRARY_RELEASE C:\Program Files\Boost\lib\libboost_system-vc120-mt-gd-1_56.lib
- Boost_THREAD_LIBRARY_DEBUG C:\Program Files\Boost\lib\libboost_thread-vc120-mt-1_56.lib
- Boost_THREAD_LIBRARY_RELEASE C:\Program Files\Boost\lib\libboost_thread-vc120-mt-gd-1_56.lib
CMAKE
- CMAKE_CONFIGURATION_TYPES Debug;Release
- CMAKE_INSTALL_PREFIX C:\Program Files\PCL
FLANN
- FLANN_INCLUDE_DIR C:\Program Files\flann\include
- FLANN_LIBRARY C:\Program Files\flann\lib\flann_cpp_s.lib
- FLANN_LIBRARY_DEBUG C:\Program Files\flann\lib\flann_cpp_s-gd.lib
QHULL
- QHULL_INCLUDE_DIR C:\Program Files\qhull\include
- QHULL_LIBRARY C:\Program Files\qhull\lib\qhullstatic.lib
- QHULL_LIBRARY_DEBUG C:\Program Files\qhull\lib\qhullstatic_d.lib
WITH
- WITH_DOCS ☐(uncheck)
- WITH_FZAPI ☐(uncheck)
- WITH_LIBUSB ☐(uncheck)
- WITH_OPENNI ☐(uncheck)
- WITH_OPENNI2 ☐(uncheck)
- WITH_PCAP ☐(uncheck)
- WITH_PNG ☐(uncheck)
- WITH_PXCAPI ☐(uncheck)
- WITH_QHULL ☑(check)
- WITH_QT ☐(uncheck)
- WITH_VTK ☑(check)
-
設定内容を確認する。
- Boost version: 1.56.0
Found the following Boost libraries:
system
filesystem
thread
date_time
iostreams
chrono - Eigen found (include: C:/Program Files/Eigen/include/eigen3, version: 3.2.2)
- FLANN found (include: C:/Program Files/flann/include, lib: optimized;C:/Program Files/flann/lib/flann_cpp_s.lib;debug;C:/Program Files/flann/lib/flann_cpp_s-gd.lib)
- QHULL found (include: C:/Program Files/qhull/include, lib: optimized;C:/Program Files/qhull/lib/qhullstatic.lib;debug;C:/Program Files/qhull/lib/qhullstatic_d.lib)
- VTK_MAJOR_VERSION 6
VTK found (include: C:/Program Files/VTK/include/vtk-6.1, lib: vtkalglib;vtkChartsCore;vtkCommonColor;vtkCommonDataModel;vtkCommonMath;vtkCommonCore;vtksys;vtkCommonMisc;vtkCommonSystem;vtkCommonTransforms;vtkInfovisCore;vtkFiltersExtraction;vtkCommonExecutionModel;vtkFiltersCore;vtkFiltersGeneral;vtkCommonComputationalGeometry;vtkFiltersStatistics;vtkImagingFourier;vtkImagingCore;vtkRenderingContext2D;vtkRenderingCore;vtkFiltersGeometry;vtkFiltersSources;vtkRenderingFreeType;vtkfreetype;vtkzlib;vtkftgl;vtkRenderingOpenGL;vtkImagingHybrid;vtkIOImage;vtkDICOMParser;vtkIOCore;vtkmetaio;vtkjpeg;vtkpng;vtktiff;vtkDomainsChemistry;vtkIOXML;vtkIOGeometry;vtkjsoncpp;vtkIOXMLParser;vtkexpat;vtkexoIIc;vtkNetCDF;vtkNetCDF_cxx;vtkhdf5_hl;vtkhdf5;vtkFiltersAMR;vtkParallelCore;vtkIOLegacy;vtkFiltersFlowPaths;vtkFiltersGeneric;vtkFiltersHybrid;vtkImagingSources;vtkFiltersHyperTree;vtkFiltersImaging;vtkImagingGeneral;vtkFiltersModeling;vtkFiltersParallel;vtkFiltersParallelImaging;vtkFiltersProgrammable;vtkFiltersSelection;vtkFiltersSMP;vtkFiltersTexture;vtkFiltersVerdict;verdict;vtkGeovisCore;vtkInfovisLayout;vtkInteractionStyle;vtkInteractionWidgets;vtkRenderingAnnotation;vtkImagingColor;vtkRenderingVolume;vtkViewsCore;vtkproj4;vtkgl2ps;vtkImagingMath;vtkImagingMorphological;vtkImagingStatistics;vtkImagingStencil;vtkInteractionImage;vtkIOAMR;vtkIOEnSight;vtkIOExodus;vtkIOExport;vtkRenderingGL2PS;vtkRenderingLabel;vtkIOImport;vtkIOInfovis;vtklibxml2;vtkIOLSDyna;vtkIOMINC;vtkIOMovie;vtkoggtheora;vtkIONetCDF;vtkIOParallel;vtkIOPLY;vtkIOSQL;vtksqlite;vtkIOVideo;vtkRenderingFreeTypeOpenGL;vtkRenderingImage;vtkRenderingLIC;vtkRenderingLOD;vtkRenderingVolumeAMR;vtkRenderingVolumeOpenGL;vtkViewsContext2D;vtkViewsGeovis;vtkViewsInfovis)
- Boost version: 1.56.0
-
[Generate]を押してソリューションファイルを出力する。
-
Visual Studioを管理者権限で起動してPCLのソリューションファイル(C:\PCL-master\build\PCL.sln)を開く。
(Visual Studioを管理者権限で起動しないとINSTALLが失敗する。) -
PCLをビルドする。(ALL_BUILD)
- ソリューションの構成(Debug, Release)を設定する。
- ソリューションエクスプローラーからALL_BUILDプロジェクトを選択する。
- [ビルド]>[ソリューションのビルド]を押してPCLをビルドする。
-
PCLをインストールする。(INSTALL)
-
インストール設定ファイルを修正する。
-
PCL-master\build\cmake_install.cmake
46 linefile(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/3rdParty/Boost" TYPE DIRECTORY FILES "C:/Program Files/Boost/" REGEX "/[^/]*\\/uninstall\\.exe$" EXCLUDE)
58 line
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/3rdParty/VTK" TYPE DIRECTORY FILES "C:/Program Files/VTK/" REGEX "/[^/]*\\/uninstall\\.exe$" EXCLUDE)
-
-
ソリューションエクスプローラーからINSTALLプロジェクトを選択する。
-
[ビルド]>[プロジェクトのみ]>[INSTALLのみをビルド]を押してPCLをインストールする。
CMAKE_INSTALL_PREFIXで指定した出力先へ必要なファイルがコピーされる。
-
-
環境変数PCL_ROOTを作成してPCLのパス(C:\Program Files\PCL)を設定する。
-
環境変数PathにPCLと3rdPartyのパスを追加する。
- ;%PCL_ROOT%\bin
- ;%PCL_ROOT%\3rdParty\FLANN\bin
- ;%PCL_ROOT%\3rdParty\VTK\bin