Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KinFu Large Scale build fails #1927

Closed
anuppari opened this issue Jul 5, 2017 · 4 comments · Fixed by #1943
Closed

KinFu Large Scale build fails #1927

anuppari opened this issue Jul 5, 2017 · 4 comments · Fixed by #1943

Comments

@anuppari
Copy link
Contributor

anuppari commented Jul 5, 2017

⚠️ This is a issue tracker, please use our mailing list for questions: www.pcl-users.org. ⚠️

Your Environment

  • Operating System and version: Windows 10
  • Compiler: Visual Studio 2015
  • PCL Version: latest master (commit 5e23315)

Here are my cmake settings:

Could NOT find PkgConfig (missing:  PKG_CONFIG_EXECUTABLE) 
Found OpenMP
Eigen found (include: C:/eigen, version: 3.3.4)
FLANN found (include: C:/Program Files/flann/include, lib: optimized;C:/Program Files/flann/lib/flann_cpp_s.lib;debug;C:/Program Files/flann/lib/flann_cpp_s.lib)
Found LIBUSB_1: C:/pcl_dependencies/libusb/MS64/dll/libusb-1.0.lib  
OpenNI 2 found (include: C:/Program Files/OpenNI2/Include, lib: C:/Program Files/OpenNI2/Lib/OpenNI2.lib, redist: C:\Program Files\OpenNI2\Redist\)
QHULL found (include: C:/Program Files/qhull/include, lib: optimized;C:/pcl_dependencies/qhull/build/Release/qhullstatic.lib;debug;C:/pcl_dependencies/qhull/build/Debug/qhullstatic_d.lib)
Found CUDA Toolkit v8.0
CUDA NVCC target flags: -gencode;arch=compute_50,code=sm_50

VTK_MAJOR_VERSION 8, rendering backend: OpenGL2
VTK found (include: C:/Program Files/VTK/include/vtk-8.0, lib: vtkChartsCore;vtkCommonColor;vtkCommonCore;vtksys;vtkCommonDataModel;vtkCommonMath;vtkCommonMisc;vtkCommonSystem;vtkCommonTransforms;vtkCommonExecutionModel;vtkFiltersGeneral;vtkCommonComputationalGeometry;vtkFiltersCore;vtkInfovisCore;vtkFiltersExtraction;vtkFiltersStatistics;vtkImagingFourier;vtkImagingCore;vtkalglib;vtkRenderingContext2D;vtkRenderingCore;vtkFiltersGeometry;vtkFiltersSources;vtkRenderingFreeType;vtkfreetype;vtkzlib;vtkDICOMParser;vtkDomainsChemistry;vtkIOLegacy;vtkIOCore;vtklz4;vtkIOXMLParser;vtkexpat;vtkDomainsChemistryOpenGL2;vtkRenderingOpenGL2;vtkglew;vtkFiltersAMR;vtkIOXML;vtkParallelCore;vtkFiltersFlowPaths;vtkFiltersGeneric;vtkFiltersHybrid;vtkImagingSources;vtkFiltersHyperTree;vtkFiltersImaging;vtkImagingGeneral;vtkFiltersModeling;vtkFiltersParallel;vtkFiltersParallelImaging;vtkFiltersPoints;vtkFiltersProgrammable;vtkFiltersSMP;vtkFiltersSelection;vtkFiltersTexture;vtkFiltersTopology;vtkFiltersVerdict;verdict;vtkGUISupportQt;vtkInteractionStyle;vtkGUISupportQtSQL;vtkIOSQL;vtksqlite;vtkGeovisCore;vtkIOImage;vtkmetaio;vtkjpeg;vtkpng;vtktiff;vtkInfovisLayout;vtkImagingHybrid;vtkInteractionWidgets;vtkImagingColor;vtkRenderingAnnotation;vtkRenderingVolume;vtkViewsCore;vtkproj4;vtkIOAMR;vtkhdf5_hl;vtkhdf5;vtkIOEnSight;vtkIOExodus;vtkexoIIc;vtkNetCDF;vtkIOExport;vtkRenderingGL2PSOpenGL2;vtkgl2ps;vtklibharu;vtkIOExportOpenGL2;vtkIOGeometry;vtkIOImport;vtkIOInfovis;vtklibxml2;vtkIOLSDyna;vtkIOMINC;vtkIOMovie;vtkoggtheora;vtkIONetCDF;vtknetcdfcpp;vtkIOPLY;vtkIOParallel;vtkjsoncpp;vtkIOParallelXML;vtkIOTecplotTable;vtkIOVideo;vtkImagingMath;vtkImagingMorphological;vtkImagingStatistics;vtkImagingStencil;vtkInteractionImage;vtkRenderingContextOpenGL2;vtkRenderingImage;vtkRenderingLOD;vtkRenderingLabel;vtkRenderingQt;vtkRenderingVolumeOpenGL2;vtkViewsContext2D;vtkViewsInfovis;vtkViewsQt
Could NOT find PCAP (missing:  PCAP_LIBRARIES PCAP_INCLUDE_DIRS) 
Boost version: 1.64.0
Found the following Boost libraries:
  system
  filesystem
  thread
  date_time
  iostreams
  chrono
  atomic
  regex
VTK found (include: C:/Program Files/VTK/include/vtk-8.0, lib: )
DOXYGEN_FOUND 
HTML_HELP_COMPILER 
Found CPack generators: NSIS
The following subsystems will be built:
  common
  octree
  io
  kdtree
  search
  sample_consensus
  filters
  2d
  geometry
  features
  ml
  segmentation
  visualization
  surface
  registration
  keypoints
  tracking
  recognition
  stereo
  cuda_common
  cuda_features
  cuda_segmentation
  cuda_sample_consensus
  cuda_apps
  outofcore
  gpu_containers
  gpu_utils
  gpu_octree
  gpu_features
  gpu_kinfu
  gpu_kinfu_large_scale
  gpu_people
  gpu_segmentation
  gpu_surface
  gpu_tracking
  people
  tools
The following subsystems will not be built:
  apps: No reason
  cuda_io: Disabled by default.
  cuda_apps: Disabled: cuda_io missing.
  examples: Code examples are disabled by default.
  simulation: Disabled by default.
  global_tests: No reason
Configuring done
Generating done

Expected Behavior

pcl_gpu_kinfu_large_scale should build

Current Behavior

Everything else in PCL builds fine except for pcl_gpu_kinfu_large_scale, and specifically world_model.cpp.
The two errors I get are:

Error	C2065	'WorldModel': undeclared identifier	pcl_gpu_kinfu_large_scale	C:\pcl\gpu\kinfu_large_scale\src\world_model.cpp	line 44

Error	C2059	syntax error: ')'	pcl_gpu_kinfu_large_scale	C:\pcl\gpu\kinfu_large_scale\src\world_model.cpp	line 44

Possible Solution

Note sure. Adding in the namespace pcl::kinfuLS::WorldModel also doesn't work, leading to template errors. Also, this tutorial seems to indicate that the namespace is not needed.

Code to Reproduce

Download the latest master commit, try compiling with gpu, cuda, and kinfu_large_scale enabled.

Context

I just want to use kinfu large scale.

@taketwo
Copy link
Member

taketwo commented Jul 6, 2017

Both KinFu and it's large scale version are not maintained. In fact, we have a plan to remove it (#1549). You will probably either need to find a fix yourself, or just switch to any of the maintained open-source alternatives. To name a few: kinfu_remake, Kintinious, InfiniTAM.

@eisoku9618
Copy link
Contributor

I got a similar error and the following patch can work for my case.
(this patch is just a workaround)

diff --git a/gpu/kinfu_large_scale/include/pcl/gpu/kinfu_large_scale/world_model.h b/gpu/kinfu_large_scale/include/pcl/gpu/kinfu_large_scale/world_model.h
index 4ccd1b7..9f3f396 100644
--- a/gpu/kinfu_large_scale/include/pcl/gpu/kinfu_large_scale/world_model.h
+++ b/gpu/kinfu_large_scale/include/pcl/gpu/kinfu_large_scale/world_model.h
@@ -40,6 +40,8 @@
 #define PCL_WORLD_MODEL_H_
 
 #include <pcl/common/impl/common.hpp>
+#include <pcl/octree/octree.h>
+#include <pcl/octree/octree_impl.h>
 #include <pcl/filters/extract_indices.h>
 #include <pcl/filters/filter_indices.h>
 #include <pcl/filters/crop_box.h>

These two lines were removed in #1639

@taketwo
Copy link
Member

taketwo commented Jul 17, 2017

A quick search shows that neither Kinfu nor KinfuLS use octree, at least not directly. Could this issue/solution be an indication that any of our other header files misses this include instead?

@eisoku9618
Copy link
Contributor

Yes, I think so. #1943 will fix this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants