まずはPCLのダウンロード先へいってPCL 1.6.0 All-In-One Installerをダウンロードして実行する この部分では基本的に「Continue」とかをおしておけばOK。結構時間がかかる。PCLのインストールそのものはよく考えれば記事にする必要なかった。
VC++でのプロジェクトの作成について解説する。
自分は用途関係なく全ての関連ファイルを入れておくことで、後から依存関係をいじる必要がないようにしている。そのため若干処理に時間がかかる。また環境によって動作のするしないは変わるので留意してほしい
プロジェクトの作成
- 「ファイル(F)」→「新規作成(N)」→「プロジェクト(P)」で画面を開く
- 表示された画面で「Win32コンソールアプリケーション」を選択、名前と場所は適当に設定する。 (今回作ったものを大元にして、あとのプロジェクトは「コピペ+名前変更」などを行うと依存関係の設定が不要になって楽なので「Template」とかにしておくといいかも)
- 「Win32アプリケーションウィザード」が表示されるので「次へ」を押す
- 「アプリケーションの設定」の画面になる。なにも選択しないで「完了」を押す。もし「空のプロジェクト」にチェックが入っている場合は外しておく
- プロジェクトの作成はこれで完了
次にプロジェクトの設定について解説する。この部分の設定を誤るとコンパイル中にエラーが出たりする。 要所々々で「適用しますか?」的なことを聞かれたらOKを押す
プロジェクトの設定
- VC++の「ソリューションエクスプローラー」内のプロジェクトの名前の部分(この場合は「Template」)を右クリックして一番下の「プロパティ」をクリックする
- 新しい画面が表示されるので左上の「構成(C)」の右にあるプルダウンリストから「全ての構成」を選ぶ
- 画面左側のリストから「構成プロパティ」を選択する
- 右側画面の「プロジェクトの規定値」の「文字セット」を 「マルチバイト文字セットを使用する」に変更
- 左側「構成プロパティ」→「C/C++」、右側「追加のインクルードディレクトリ」に
C:\Program Files (x86)\PCL 1.6.0\include\pcl-1.6;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\Boost\include;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\Eigen\include;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\FLANN\include;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\Qhull\include\libqhullcpp;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\VTK\include\vtk-5.8;
C:\Program Files (x86)\OpenNI\Include;
を書き込む。*この部分はPCLをインストールした場所によって変わるので、PCLとOpenNIがインストールされた場所を確認して上記の項目を変更する。またバージョンが違ってることもあるので注意 - 左側「構成プロパティ」→「リンカー」、右側「追加のライブラリディレクトリ」に
C:\Program Files (x86)\PCL 1.6.0\lib;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\Boost\lib;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\FLANN\lib;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\Qhull\lib;
C:\Program Files (x86)\PCL 1.6.0\3rdParty\VTK\lib\vtk-5.8;
C:\Program Files (x86)\OpenNI\Lib
を書き込む。*この部分もPCLをインストールした場所によって変わるので、PCLとOpenNIがインストールされた場所を確認して上記の項目を変更する。またバージョンが違ってることもあるので注意 - 画面左上「構成(C)」の右にあるプルダウンリストから「Debug」を選択する
- 画面左「構成プロパティ」→「リンカー」→「入力」、画面右「追加の依存ファイル」に
pcl_apps_debug.lib;
pcl_common_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_segmentation_debug.lib;
pcl_search_debug.lib;
pcl_surface_debug.lib;
pcl_tracking_debug.lib;
pcl_visualization_debug.lib;
flann-gd.lib;
flann_s-gd.lib;
flann_cuda_s-gd.lib;
flann_cpp_sgd.lib;
qhull6_d.lib;
qhullcpp_d.lib;
qhullstatic_d.lib;
qhullstatic_p_d.lib;
openNI.lib;
OpenNI.jni.lib;
NiSampleModule.lib;
NiSampleExtensionModule.lib;
MapReduceMPI-gd.lib;
mpistubs-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;
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;
opengl32.lib;
以上を書き込む。 - 画面左上「構成(C)」の右にあるプルダウンリストから「Release」を選択する
- 画面左「構成プロパティ」→「リンカー」→「入力」、画面右「追加の依存ファイル」に
pcl_apps_release.lib;
pcl_common_release.lib;
pcl_features_release.lib;
pcl_filters_release.lib;
pcl_io_release.lib;
pcl_io_ply_release.lib;
pcl_kdtree_release.lib;
pcl_keypoints_release.lib;
pcl_octree_release.lib;
pcl_registration_release.lib;
pcl_sample_consensus_release.lib;
pcl_segmentation_release.lib;
pcl_search_release.lib;
pcl_surface_release.lib;
pcl_tracking_release.lib;
pcl_visualization_release.lib;
flann.lib;flann_s.lib;
flann_cuda_s.lib;
flann_cpp_s.lib;
qhull6.lib;
qhullcpp.lib;
qhullstatic.lib;
qhullstatic_p.lib;
openNI.lib;
OpenNI.jni.lib;
NiSampleModule.lib;
NiSampleExtensionModule.lib;
MapReduceMPI.lib;
mpistubs.lib;
vtkalglib.lib;
vtkCharts.lib;
vtkCommon.lib;
vtkDICOMParser.lib;
vtkexoIIc.lib;
vtkexpat.lib;
vtkFiltering.lib;
vtkfreetype.lib;
vtkftgl.lib;
vtkGenericFiltering.lib;
vtkGeovis.lib;
vtkGraphics.lib;
vtkHybrid.lib;
vtkImaging.lib;
vtkInfovis.lib;
vtkIO.lib;
vtkjpeg.lib;
vtklibxml2.lib;
vtkmetaio.lib;
vtkNetCDF.lib;
vtkNetCDF_cxx.lib;
vtkpng.lib;
vtkproj4.lib;
vtkRendering.lib;
vtksqlite.lib;
vtksys.lib;
vtktiff.lib;
vtkverdict.lib;
vtkViews.lib;
vtkVolumeRendering.lib;
vtkWidgets.lib;
vtkzlib.lib;
opengl32.lib;
以上を書き込む - 適用を押して終了
今回行った設定でプログラムを実行できるかはサンプルコードなどを書いて実行すればわかると思う。
0 件のコメント:
コメントを投稿