1. 程式人生 > >VS編譯PCL1.8.0

VS編譯PCL1.8.0

參考1
參考2
提醒:
1、編譯過程請聯網!VS在編譯VTK時需要自動下載一些檔案,否則會編譯失敗!
2、第三方庫最好都安裝在預設目錄。(也就是在後面cmake中設定CMAKE_INSTALL_PREFIX的值時,用預設目錄)

1、準備

工具:
vs2013(注:若要使用kinfu請使用vs2010,且到pcl官網下載對應的第三方庫)
cmake3.5.0

注:
友情連結
這裡寫圖片描述
參考這裡

2、開始

2.1編譯boost

若需要mpi則首先下載安裝它,然後到boost_1_60_0\tools\build\src\tools\mpi.jam中修改下面幾行:
249-251 line

local microsoft_mpi_sdk_path = "C:\\Program Files (x86)\\Microsoft SDKs\\MPI" ;
local microsoft_mpi_path = "C:\\Program Files\\Microsoft MPI" ;
if [ GLOB $(microsoft_mpi_sdk_path)\\Include : mpi.h ]

260-262 line

options = <include>$(microsoft_mpi_sdk_path)/Include
          <address-model>64
:<library-path>$(microsoft_mpi_sdk_path)/Lib/x64 <library-path>$(microsoft_mpi_sdk_path)/Lib/x86

268 line

.mpirun = "\"$(microsoft_mpi_path)\\Bin\\mpiexec.exe"\" ;

然後以管理員身份執行VS自帶的cmd(“VS2013 x86 本機工具命令提示”),進入boost資料夾,執行bootstrap.bat,執行結束後會生成project-config.jam,開啟並在第四行加上:using mpi ;(注意“;”前面有一個空格!) 接下來還是用cmd進入boost資料夾,執行如下命令編譯boost:

Win32:
b2.exe toolset=msvc-12.0 address-model=32 --build-dir=build\x86 install --prefix="C:\Program Files (x86)\Boost" -j8
X64:
b2.exe toolset=msvc-12.0 address-model=64 --build-dir=build\x64 install --prefix="C:\Program Files\Boost" -j8

其中msvc-11.0代表vs2012,如果是12.0是vs2013,14.0是vs2015。後面的C:\Program Files\Boost是boost的安裝資料夾。
然後等著就好了,時間有點久,耐心等。完成後在環境變數中建立BOOST_ROOT變數,值為boost資料夾安裝地址C:\Program Files\Boost.

2.2編譯eigen

使用cmake,分別設定eigen的source和build路徑(source路徑其實就是含有CMakeLists.txt的資料夾,其實就是source的根目錄,我的路徑是E:\pcl\Eigen),如build不存在,點選Configure會提示新建build資料夾,選擇vs11-2012編譯器,這裡注意Configure時有CMAKE_INSTALL_PREFIX這個選項,預設為C:\Program Files\Eigen.這裡的路徑即為該軟體最後的安裝路徑(也是環境變數中要設定的EIGEN_ROOT的路徑,可設定為你想要的其它路徑,後邊的FLANN,QHULL,VTK也是一樣道理).然後Generate。
之後**以管理員身份執行**VS2012(否則install時會失敗),開啟bulid資料夾下的eigen.sln工程,待加加完檔案後,生成ALL_BUILD(Debug和 Release均要生成),完成後生成INSTALL(Debug and Release)。可以看到eigen安裝路徑中出現include資料夾。最後在環境變數中建立EIGEN_ROOT變數,值為eigen的安裝路徑。

2.3編譯qhull

使用cmake,分別設定qhull的source和build路徑,如build不存在,點選Configure會提示新建build資料夾,選擇vs11-2013-win64編譯器.注意根據需要修改CMAKE_INSTALL_PREFIX,然後新增一個entry:

Name: CMAKE_DEBUG_POSTFIX

Type: STRING

Value: -d

修改完後再次點Configure,然後Generate。以管理員身份執行VS2013並開啟qhull.sln工程檔案,待載入完檔案後,完成後生成ALL_BUILD(debug和release),然後生成INSTALL(Debugand Release)。完成後可以看到qhull安裝路徑中出現include和lib資料夾。最後在環境變數中建立QHULL_ROOT變數,值為qhull安裝地址。

2.4編譯VTK

使用cmake,分別設定VTK的source和build路徑,如build不存在,點選Configure會提示新建build資料夾,選擇vs12-2013-win64編譯器.注意根據需要修改CMAKE_INSTALL_PREFIX選項,然後新增一個entry:

Name: CMAKE_DEBUG_POSTFIX

Type: STRING

Value: -gd

修改完後再次點Configure,然後Generate。以管理員身份執行VS2013並開啟VTK.sln工程檔案,待載入完檔案後,生成ALL_BUILD(debug和release)(時間有點久,很久,耐心等待),完成後生成install(debug和release)。完成後可以看到VTK資料夾中出現include和lib資料夾。最後在環境變數中建立VTK_ROOT,為VTK安裝路徑.

2.5編譯flann

使用cmake,分別設定Flann的source和build路徑(如C:\flann,C:\flann\build),選擇vs12-2013編譯器.注意根據需要修改CMAKE_INSTALL_PREFIX,然後去掉BULID_MATLAB_BINDINGS和BULID_PYTHON_BINDINGS的勾選,不bulid它們
這裡寫圖片描述
然後新增一個entry:

Name: CMAKE_DEBUG_POSTFIX

Type: STRING

Value: -gd

修改完後再次點Configure,然後Generate。在C:\flann\src\cpp\flann\util(原始碼)中找到serialization.h檔案 在92行BASIC_TYPE_SERIALIZER(bool)之後加入以下程式碼:

#ifdef _MSC_VER

BASIC_TYPE_SERIALIZER( unsigned __int64 );//注意此處__int64是兩個下劃線連一起

#endif

修改完後以管理員身份執行VS2013並開啟flann.sln工程檔案,待載入完檔案後,(debug和release)生成all_build,完成後生成install(Debugand Release)。完成後可以看到flann安裝路徑下出現include和lib資料夾。最後在環境變數中建立FLANN_ROOT變數,值為flann安裝路徑。

2.6最後配置PCL

使用cmake選擇source和build資料夾,such as:
Where is the source code: C:\PCL-master\source

Where is build the binaries: C:\PCL-master\build

點選Configure(此時最好把Grouped勾選,這裡寫圖片描述),選擇vs12-2013-win64編譯器,正常情況下不會出現什麼問題:
這裡寫圖片描述
展開上圖中bulid,可以選擇我們要編譯的模組,有些模組不能勾選,否則生成會出錯(原因不知道,哪位知道,還請告知,比如all-in-one-install)
其中如果要使用kinfu需要勾選GPU,以及CUDA,且最好安裝最新版的CUDA,安裝CUDA過程中不要用預設的精簡安裝,選擇自定義,全選後繼續安裝,安裝完畢重啟下電腦。
還要勾選WITH下面的openni:
這裡寫圖片描述
這裡寫圖片描述

有時在configure後會出現找不到Boost的情況,我的解決辦法的手動新增,下面是我的Boost下拉欄中的截圖,可以作為參考,配置那些沒有找到的庫:
這裡寫圖片描述
如果VTK沒有找到,可手動新增改如下:
這裡寫圖片描述

注意根據需要修改CMAKE_INSTALL_PREFIX(我的路徑為C:\ProgramFiles\PCL),再次點選Configure,然後generate生成.以管理員身份執行VS2013並開啟PCL.sln,生成ALL_BUILD(Debug和Release模式,各自得半小時左右).
隨後生成INSTALL(Debug and Release)將PCL-1.8成功安裝。

最後在環境變數中建立PCL_ROOT變數,值為PCL安裝路徑。

相關推薦

VS編譯PCL1.8.0

參考1 參考2 提醒: 1、編譯過程請聯網!VS在編譯VTK時需要自動下載一些檔案,否則會編譯失敗! 2、第三方庫最好都安裝在預設目錄。(也就是在後面cmake中設定CMAKE_INSTALL_PREFIX的值時,用預設目錄) 1、準備 工具:

Pcl1.8.0原始碼編譯與安裝

工具:第三方依賴庫原始碼下載;pcl1.8.0原始碼下載;cmake3.5.2(可以使用最新版) 一.第三方依賴庫的安裝與編譯: 1.boost編譯 原始碼放在C/boost (1):下載微軟mpi,安裝,進入boost\boost_1_59_0

CentOS 7 編譯 mysql 8.0.12

p s 步驟 數據 自啟動 flush numa img clas ont 步驟一:安裝mysql依賴 yum install -y libaio numactl 步驟二:下載mysql社區版 wget https://dev.mysql.com/get/Downlo

配置pcl1.8.0後程序執行常見error

1. 報錯類似的問題:Error C4996 'pcl::SAC_SAMPLE_SIZE': This map is deprecated and is kept only to prevent breaking existing user code. Starting from PCL 1.8.0

PCL1.8.0+VS2010+win7環境配置

最近正好弄了一下PCL視覺化三維點雲這東西,簡單寫寫過程吧 網上很多配置教程,還停留在傻瓜式教學中,雖然易於理解,但是實在是對個人技能的培養沒什麼大的提升。 我就簡單寫一寫配置工程需要的一些必要步驟。 1:環境、安裝包準備 Win7、VS2010、PCL1.5.0/PC

PCL1.8.0在Ubuntu16.04下的安裝及測試

1、安裝PCL之前,需要先安裝以下依賴項: sudo apt-get update sudo apt-get install git build-essential linux-libc-dev sudo apt-get install cmake cmake-gui

VS2015配置PCL1.8.0總結

** 綜合一些部落格資料,結合配置過程發現的問題整理如下: ** 一、下載相關檔案 1.下載PCL-1.8.0-AllInOne-msvc2015-win64.exe、屬性表和PDB和測試pcd檔案rabbit.pcd,其中,屬性表可以不下載。

17 win7 sp1 x64/VS2015下配置creo4.0二次開發環境——呼叫了眾多開源庫(ceres-solver,PCL1.8.0,office 2016COM介面,MySql資料庫等)

0 引言 本次開發環境的配置是在綜合考慮了開源庫的版本、VS版本以及CREO4.0的版本,同時針對甲方需求選擇了win7 sp1 x64系統。 配置的過程中遇到了形形色色的問題,但是一一解決了。通過這一個帖子,希望總結環境配置的經驗,為以後的專案開發提供借鑑。 1 VS2015 在win7 sp1 x64

PCL1.8.0+QT5.5+vtk7.0+VS2013+win10 x64配置

廢話不多說,直接上乾貨。 各庫具體資訊:      Qt5.5-opensource。官網下載。注意下載列表一定要包含MSVC2013-x64       VTK7.0 官網下載       相信已經到了做這四個庫的整合,前三個庫的安裝應該已經沒問題了。注意一

pcl1.8.0+QT5.7.0+vs2013 win7 x64環境配置以及第一個小程式實現

幾經波折終於配置成功,現在總結下網路上的較簡潔的方法分享給大家(第一次寫博,謝大家支援) 主要參考部落格: http://blog.csdn.net/u012750702/article/details/53046210  http://blog.csdn.net/woka

qt5.8.0之靜態編譯

http 感覺 AR 過度 最好的 外包 tail 安裝 sdn 仔細一算,接觸Qt也有六七年了,但總感覺自己仍是菜鳥一枚。小碩畢業進入公司後,進行某一設備的算法研究(matlab+vb,當時對qt是完全的小白),並應用於由外包人員開發的Qt項目。隨著項目深入

Win10 下Cmake3.8.0編譯配置 Opencv3.2 + Cuda8.0 + VS2010

Win10 下Cmake3.8.0編譯配置 Opencv3.2 + Cuda8.0 + VS2010 早就想了解一下opencv3+cuda了,但是一直沒有時間,這幾天實驗了一下,把環境簡單的搭一下,編譯一下opencv3。這裡編譯了兩個版本,一個是Release另一個是Debug版本的

VS2013下PCL1.8.1的編譯

/****************************************** PCL1.8.1編譯 *****************************************/ 1.本次編譯是在vs2013下32位的編譯,其所依賴的庫為:

關於PCL1.8.1在編譯過程中報錯問題的排除

(1)將lpng1635和zlib-1.2.8解壓在同一目錄檔案下面; (2)進入lpng1635/projects/vstudio,確認zlib.props中的路徑是否 <ZLibSrcDir>..\..\..\..\zlib-1.2.8</ZLibS

PCL1.8.1中依賴Boost1.65.0時CMake錯誤

CMake Error at C:/Program Files (x86)/CMake/share/cmake-3.8/Modules/FindBoost.cmake:1813 (message): Unable to find the requested Boost lib

PCL1.8之features模組編譯預處理PCL_ONLY_CORE_POINT_TYPES

  最近要用到PCL,先編譯了1.7版本,發現features模組下面的pcl_features_release.lib和pcl_features_debug.lib都接近40M大小;但是後來編譯了1.8版本之後,發現這兩個檔案都是6M多一點。在理論上1.8版本

VS2013 編譯 Qt 5.8.0

1. 下載Qt原始碼 2. 將原始碼解壓縮,我放到了E盤根目錄,然後將qt-everywhere-opensource-src-5.8.0資料夾名字改為Qt 3. 在Qt目錄下新建檔案build.bat,內容如下:   REM Set up \Microsoft V

pcl 1.8.0(5) VTK編譯

Download 同上述部落格的編譯原始碼一樣,首先下載VTK原始碼,下載地址為VTK7.0.0. CMake 開啟CMake,設定工程目錄如下: Where is the source code: C:\VTK-7.0.0 Where is bui

VS2010(64)+Qt4.8.0+PCL1.6.0+Vtk配置顯示點雲

  a:下載qt::http://download.qt.io/archive/qt/4.8/4.8.0/   b: 下載qt+vs+addin::http://download.qt.io/official_releases/vsaddin/   c:  安裝qt 和qt-vs-addin。   d:  

PCL 1.8.0編譯、配置、VS2013

引言 pcl1.8.0,較pcl1.7和1.6多了不少演算法,很多感興趣的方法都在pcl1.8中有所實現。當pcl11.8.0rc1和rc2釋出時就迫不及待的下載下來進行使用,用了幾個月發現pcl1.8.0rc版有幾個bug無法解決,如:表面重建時無法對映紋理