在带有PCL 1.8.1的Visual Studio 2017中出现LNK 2005错误

时间:2018-08-09 03:34:18

标签: c++ cmake computer-vision vtk

我正在关注PCl教程,并使用Cmake 3.12设置了所有环境变量并生成了代码

  

LNK2005“ public:bool_cdeclvtkCompositeDataDisplayAttributes :: HasBlockColors(void)const”(?HasBlockColors @ vtkCompositeDataDisplayAttributes @@ QEBA_NXZ)已经在vtkRenderingCore-8.1.lib(vtkRenderingCore-8.1.dll)项目C:\ User中定义PCL \ PCLProjects \ test2 \ build \ vtkRenderingCore-8.0.lib(vtkCompositeDataDisplayAttributes.obj)1

     

错误LNK2005“公共:bool __cdecl vtkCompositeDataDisplayAttributes :: HasBlockOpacities(void)const”(?HasBlockOpacities @ vtkCompositeDataDisplayAttributes @@ QEBA_NXZ)已在vtkRenderingCore-8.1.lib(vtkRenderingja-C \ User.dll)中定义。 \ Desktop \ PCL \ PCLProjects \ test2 \ build \ vtkRenderingCore-8.0.lib(vtkCompositeDataDisplayAttributes.obj)1

     

错误LNK2005“ public:bool __cdecl vtkCompositeDataDisplayAttributes :: HasBlockVisibilities(void)const”(?HasBlockVisibilities @ vtkCompositeDataDisplayAttributes @@ QEBA_NXZ)已在vtkRenderingCore-8.1.lib(vtkRenderingCore-DLL中定义。 \ Desktop \ PCL \ PCLProjects \ test2 \ build \ vtkRenderingCore-8.0.lib(vtkCompositeDataDisplayAttributes.obj)1

     

发现一个或多个错误定义的符号LNK1169项目C:\ Users \ jaa \ Desktop \ PCL \ PCLProjects \ test2 \ build \ Release \ project.exe 1

我该如何解决?

1 个答案:

答案 0 :(得分:0)

从错误消息中,您似乎正在链接到PCL库的两个不同版本,即8.0和8.1。您将要查找所有引用8.0库的位置并将其更改为使用8.1库。