【PCL】VCPKGを使ってPoint Cloud LibraryをVisual Studioにインストール
Point Cloud Library(以降PCL)をVisual studioにインストールする方法をご紹介します。
自分も結構苦労したので備忘録もかねて。
Visual Studioのインストール
最初にVisual studioのインストールが必要です。
visual studio 2019のインストールにこの記事を参考にして下さい。
WindowsへのPCLインストールの方法
PCLはBoostやEigenなど複数の外部ライブラリを必要としますので、インストールも結構面倒です。
インストールもいくつかの方法が用意されています。
ALL-in-one-installer
必要なライブラリをまとめてインストールしてくれるので、一番簡単な方法だとおもいます。
しかしvisual studioの環境によりインストーラーも変わってきます。
色々試したのですが自分は成功しませんでした。
VCPKGを利用する
VCPKGとはC/C++で記述されたオープンソースのライブラリを利用する為のマイクロソフト提供のツールです。
手元でビルドする点が、上記ALL-in-one-installerと異なる点です。
ソースをビルドするので最新版が入手可能となり、自分の環境にも合わせやすいと言うメリットがあります。
今回ご紹介する方法もVCPKGを利用した方法になります。
ちなみにインストールには30GByte以上必要となりますので、十分な空き容量を確保して下さい。
VCPKGのインストール
githubよりvcpkgをクローンしVCPKGをビルドします。
GitHubよりVCPKGのクローン
VCPKGをインストールしたいフォルダVCPKGをクローンします。
vcpkgのgithubはアドレスは以下になります。
https://github.com/microsoft/vcpkg
Gitが初めての方は以下の記事を参考にしてみて下さい。
以下はtourtoiseGitを利用した例です。
VCPKGのインストールフォルダはd:\pcl_testとしました。
1)d:\pcl_testフォルダを右クリックしGitクローンを選択します。
2)URLにvcpkgのgithubのアドレスを入力します。ディレクトリに項目は自動で入力されるはずです。
他の項目はデフォルトのままで構いません。
OKを押すとクローンが始まります。
クローンが成功するとd:\pcl_test配下にvcpkgフォルダが生成されます。
VCPKGのビルド
ビルド作業はPowerShell上で行います。コマンドプロンプトではありませんのでお気を付け下さい。
1)PowerShellを立ち上げます。
2)PCLをインストールしたいフォルダに移動します。本例ではd:\pcl_test
3)以下のコマンドを打ち込みます。
.
vcpkg\bootstrap-vcpkg.bat
すぐにビルドが完了します。
PCLのインストール
PCLのインストールもPowerShellで行います。
フォルダは移動せず(本例ではr:\pcl_test)下記コマンドを入れて下さい。
vcpkg\vcpkg.exe install pcl:x64-windows
インストールには30分~1時間ほどかかります。
Visuallizationのインストール
この状態ではまだvisualizaitionがインストールされていません。
必要に応じてこちらもインストールします。
vcpkg\vcpkg.exe install pcl[visualization]:x64-windows –recurse
こちらもかなり時間がかかります。
CMake
visual studioではビルド環境をソリューションと呼びますが、CMakeでこれを構築します。
通常のプログラムではVisual studioのウィザードから構築出来ますが、PCLでは必要なライブラリが多数ありますのでCMakeを利用します。
先ずはサンプルソースを作成するフォルダをpcl_test配下に作成して下さい。
ここではsampleフォルダとします。
CMakeのインストール
cmakeのホームページよりWindows用のインストーラをダウンロードし実行して下さい。
64bit版と32bit版がありますのでOSのbit数と同じバージョンを利用します。
Next
ライセンス画面です、確認してチェックを入れてNext
PATHの設定です、不要なはずですが実行時に不具合が出たら設定を有効にします
インストール先です、デフォルトで構いません。(筆者はドライブ容量の関係でDドライブにしています)
Installボタンでインストール開始します。
インストール中
インストール終了。
CMake用の環境設定
先ほど用意したsampleフォルダにCMakelists.txtとソースコードを配置しCMakeを走らせることでプロジェクトを生成します。
プロジェクト名をsampleとしソースファイルをmain.cppとします。
CMakelists.txtとmain.cppをsampleフォルダにコピーして下さい。
CMakelists.txt
CMake用の設定ファイルです。
シンプルな設定です。
2行目、project(abc)は希望するソリューション名を入れます。
この例ではabcソリューションが生成されます
7行目、add_executable (sample main.cpp)
sampleフォルダのmain.cppを指定してます。
8行目、target_link_libraries (sample ${PCL_LIBRARIES})
sampleフォルダを指定します。
上記以外の行はそのままで構いません
main.cpp
特に処理はしていない、シンプルなmain.cppを用意しました。
CMakeの実行
PowerShellでd:\pcl_test\sampleフォルダに進み以下のコマンドを入力します。
cmake -B D:\pcl_test\sample\build -DCMAKE_TOOLCHAIN_FILE=D:\pcl_test\vcpkg\scripts\buildsystems\vcpkg.cmake
簡単な説明
このような画面になればCMakeは成功です。
sampleフォルダ配下にbuileフォルダが出来ているのを確認して下さい。
Visual studio
これまでの作業でVisual Studioのソリューションファイルが作成されています。
今回の例ではabcソリューン。
abc.slnをクリックしてVisual studioを立ち上げます。
立ち上がったらソリューションエクスプローラーのsampleを右クリックしてスタートアッププロジェクトに設定します。
ビルドを行いエラーが無ければ成功です。
チュートリアルコードのコピー
PCLでは様々なチュートリアルコードが用意されています。
次の項からはそれらチュートリアルについて検証します。
チュートリアルはソースコードだけをコピーするよりPCL全体をコピーした方が簡単です。
以下のアドレスよりクローンしてご利用下さい。
https://github.com/PointCloudLibrary/pcl
チュートリアルコードは以下にあります。
pcl→doc→tutorials→content→source
サンプルデータのコピー
チュートリアルで利用するサンプルデータも事前にダウンロードしておくと便利です。
サンプルコードは以下にありますので、クローンして下さい
https://github.com/PointCloudLibrary/data
お疲れ様でした。
ディスカッション
コメント一覧
まだ、コメントがありません