2014-11-06 33 views
4

試圖在Windows 8.1上VS2012建立PCL,所以我可以嘗試我的Kinect集成對Windows V2與它的傳感器構建PCL時failling,但是我似乎遇到了一堆CMake的錯誤,我不知道該怎麼辦。這部分是因爲我不是很熟悉,CMake的,所以我下面其中概述了使用CMake的GUI依賴建設教程here。然而,在整個過程中,我發現唯一正確構建的東西是我在命令行中使用cmake構建的東西。錯誤是:C++ CMake的FLANN在vs2012

對於FLANN:

當試圖建立在VS2012 INSTALL(這甚至沒有進入其他生成錯誤,但讓我們從這裏開始),我得到:

錯誤21錯誤C2228:左 '.serialize' 必須具有 類/結構/聯合d:\ FLANN-1.8.4-SRC \ FLANN-1.8.4-SRC \ SRC \ CPP \ FLANN \ UTIL \ serialization.h 線18:type.serialize(ar);錯誤24錯誤LNK1181:無法打開 輸入文件 '.. \ LIB \發佈\ flann.lib' d:\ FLANN-1.8.4-SRC \ FLANN-1.8.4-SRC \建造\例子\ LINK 錯誤25錯誤MSB3073:該命令「SETLOCAL C:\ CMake的\ BIN \ cmake.exe -DBUILD_TYPE =釋放-P cmake_install.cmake如果%ERRORLEVEL%NEQ 0轉到:cmEnd:cmEnd ENDLOCAL &呼叫:cmErrorLevel%ERRORLEVEL%&轉到 : cmDone:cmErrorLevel出口/ b%1:cmDone如果%ERRORLEVEL%NEQ 0轉到 :VCEnd:VCEnd」退出,代碼1 C:\ Program Files文件 (86)\的MSBuild \ Microsoft.Cpp \ V4.0 \ V110 \ Microsoft.CppCommon.targets 134

對於VTK:

VTK_USE_QTOPENGL選項沒有出現,儘管我已經第一次啓用VTK_USE_QT,並且VS2012的項目生成崩潰了幾次,但能夠移過崩潰(我擔心這對於實際使用而言並不是好兆頭VTK)

對於Qhull:

類似誤差作爲FLANN:

錯誤1個錯誤MSB3073:該命令「SETLOCAL C:\ CMake的\ BIN \ cmake.exe -DBUILD_TYPE =調試-P cmake_install.cmake if%errorlevel%neq 0 goto:cmE ND:cmEnd ENDLOCAL &呼叫:cmErrorLevel%ERRORLEVEL%&轉到 :cmDone:cmErrorLevel出口/ B%1:cmDone如果%ERRORLEVEL%NEQ 0轉到 :VCEnd:VCEnd」編碼1Ç退出:\ Program Files文件 ( x86)\ MSBuild \ Microsoft.Cpp \ v4.0 \ V110 \ Microsoft.CppCommon.targets 134

但其餘部分構建得很好。任何的建議都受歡迎。

回答

8

我有PCL建設與VS2012類似的問題在Windows 7

這是我如何解決: 對於所有的情況下,開放Visual Studio中以管理員身份之前。

FLANN

  1. 使用CMake和單擊 「配置」 後,設置 BUILD_PYTHON_BINDINGS和BUILD_MATLAB_BINDINGS爲OFF。
  2. 再次點擊「配置」,然後「生成」。
  3. 打開solucion文件(以管理員身份使用VS)。
  4. 編輯文件FLANN的\ src \ CPP \ FLANN \ UTIL \ serialization.h添加語句BASIC_TYPE_SERIALIZER(...)後(這是aprox的一致#93)下面幾行: 的#ifdef _MSC_VER BASIC_TYPE_SERIALIZER(無符號__int64); #endif
  5. 在調試和發佈配置中構建ALL_BUILD項目和INSTALL項目。

QHUll

  1. 打開CMake和點擊 「配置」 之前,點擊 「添加項」 和滿山遍野如下: 名稱:CMAKE_DEBUG_POSTFIX 類型:STRING 值:_D
  2. 然後點擊「確定」。
  3. 點擊「配置」兩次,然後點擊「生成」。
  4. 打開解決方案並在調試和發佈配置中構建ALL_BUILD項目和INSTALL項目。

VTK

  1. 打開CMake和點擊 「配置」 之前,如果你沒有足夠的環境變量Qt4.x手動定位: QT_QMAKE_EXECUTABLE qmake的位置。 EXE QT_QTCORE_librery_RELEASE QT_QTCORE_LIBRARY_DEBUG QT_MKSPECIF_DIR
  2. 打開解決方案,並建立ALL_BUILD項目和安裝Project,無論是在調試和發佈配置。

希望它適合你。

+0

謝謝!我會贊成,但我沒有足夠的代表。我會讓你知道這個作品 – physincubus 2015-01-29 15:22:58

+0

作品!非常感謝! – physincubus 2016-01-29 20:32:39