PCL 1.8.1 Visual Studio 2017 FLANN LNK2019链接器错误生成

时间:2018-11-27 21:27:21

标签: c++ visual-studio include linker-errors point-cloud-library

我正在尝试从Visual Studio 2017中的https://github.com/PointCloudLibrary/pcl/releases设置PCL 1.8.1库。

在我的包含目录中,我具有:

  

C:\ Program Files(x86)\ OpenNI2 \ Include
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ VTK \ include \ vtk-8.0
  C:\ Program Files(x86)\ PCL 1.9.1 \ 3rdParty \ Qhull \ include
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ include
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ Eigen \ eigen3
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ Boost \ include \ boost-1_64
  C:\ Program Files(x86)\ PCL 1.8.1 \ include \ pcl-1.8

图书馆目录:

  

C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ VTK \ lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ Qhull \ lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ Boost \ lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ lib
  C:\ Program Files(x86)\ OpenNI2 \ Lib

我认为这都是正确的。我能够构建并运行一个简单的示例,例如http://pointclouds.org/documentation/tutorials/writing_pcd.php#writing-pcd。我的主要需求是使用Fdtree和Octree,但是当我尝试编译此示例http://pointclouds.org/documentation/tutorials/kdtree_search.php#kdtree-search时,出现LNK2019错误: LNK2019 errors screenshot

如您所见,它都与FLANN库有关。我发现,即使从包含库中删除C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib,也会发生相同的错误。我没有正确包括图书馆吗?

此外,这篇文章:Setting up Point Cloud Library with Visual Studio提到在链接程序/输入/其他依赖项中添加.libs。我也尝试这样做:

  

C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann.lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann_cpp.lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann_cpp_s.lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann_cpp_s-gd.lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann_cpp-gd.lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann_s.lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann_s-gd.lib
  C:\ Program Files(x86)\ PCL 1.8.1 \ 3rdParty \ FLANN \ lib \ flann-gd.lib

虽然没有完整的路径,但仍然没有成功...

我真的是想使这项工作正常进行,并且还要理解在Visual Studio / C ++中包括外部内容的整个过程。我对此很陌生,它绝对比Python的“ pip install xyz,import xyz”要复杂得多。...芽!我讨厌当某些东西对我来说是一个黑匣子,并且我真的很想解决这个问题。 / p>

抱歉,如果这篇文章太长,但是我想提供所有细节。谢谢您的回答。

1 个答案:

答案 0 :(得分:0)

我实际上设法解决了这个问题!问题是我没有连接“ pcl_kdtree_debug.lib”,毕竟对于FLANN库来说还可以。从链接器错误来看,并不清楚它实际需要什么。我想出了这个问题,而对一个有类似问题的不同事物使用完全不同的库。

感谢drescherjm!您在其中扮演了自己的角色。