从源码搭建PCL1.7.2+vs2015+win10
PCL是處理三維點云的第三方C++庫,功能強大,在三維領(lǐng)域,其地位與二維領(lǐng)域的opencv相當。可以直接使用All-In-One installer 安裝。也可以使用源碼搭建PCL。
從官網(wǎng)下載源碼。下載CMake。編譯PCL,必需先編譯有以下第三方庫:Boost、Eigen、FLANN、VTK,可選的第三方庫有:Qt、QHULL、OpenNI、GTest。
Eigen、FLANN、VTK使用cmake-gui編譯。可參考博客。
Eigen只生成頭文件,不區(qū)分debug和release, 其他需要區(qū)分debug和release,需添加一個entry, Name:CMAKE_DEBUG_POSTFIX,Type:STRING,Value:-gd。另外要將CMAKE_INSTALL_PREFIX這個選項改為相應(yīng)的源碼文件。
注意:
1、若使用64位的項目,需要編譯64位的boost。從開始菜單啟動Visual Studio的VS2015 x64 Native Tools Command Prompt ,進入boost源碼目錄,運行bootstrap.bat。然后運行b2 --build-type=complete toolset=msvc-14.0 address-model=64,其中toolset對應(yīng)于visual studio版本。
2、編譯VTK時可能會提醒缺少window.h。在vs2015的Property Manager中添加其路徑。
3、編譯PCL時,若出現(xiàn)library limit of 65535 objects exceeded錯誤時,需要在CMake ?PCL時點擊上部的Advanced ,將PCL_ONLY_CORE_POINT_TYPES勾選。
4、Eigen使用3.2.8版本,因為3.3會在PCL的ALL_BUILD中出現(xiàn)Literal is not a member of Eigen NumTraits。
5、編譯PCL時可能會提醒error C2338: <hash_map> is deprecated and will be REMOVED. Please use <unordered_map>.可以在hash_map頭文件中添加#define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS 1
6、PCL1.8可能會遇到static_cast cannot convert from double to pcl::visualization.....的問題只需在出錯處將double轉(zhuǎn)化為int。
?
轉(zhuǎn)載于:https://www.cnblogs.com/Tron/p/6796067.html
總結(jié)
以上是生活随笔為你收集整理的从源码搭建PCL1.7.2+vs2015+win10的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: apache 给网站配置域名
- 下一篇: 头插法建立单链表学习总结