CPP中OpenCV和pcl库之间的冲突

时间:2021-07-22 08:16:48

标签: c++ opencv opengl-es

objc[5267]: Class vtkCocoaTimer is implemented in both /usr/local/opt/vtk/lib/libvtkRenderingUI-9.0.1.dylib (0x11bceb438) and /usr/local/opt/vtk@8.2/lib/libvtkRenderingOpenGL2-8.2.1.dylib (0x1100d5e90). One of the two will be used. Which one is undefined.
objc[5267]: Class vtkCocoaFullScreenWindow is implemented in both /usr/local/opt/vtk@8.2/lib/libvtkRenderingOpenGL2-8.2.1.dylib (0x1100d5f08) and /usr/local/opt/vtk/lib/libvtkRenderingOpenGL2-9.0.1.dylib (0x11bc07240). One of the two will be used. Which one is undefined.
objc[5267]: Class vtkCocoaServer is implemented in both /usr/local/opt/vtk@8.2/lib/libvtkRenderingOpenGL2-8.2.1.dylib (0x1100d5f30) and /usr/local/opt/vtk/lib/libvtkRenderingOpenGL2-9.0.1.dylib (0x11bc07268). One of the two will be used. Which one is undefined.
objc[5267]: Class vtkCocoaGLView is implemented in both /usr/local/opt/vtk@8.2/lib/libvtkRenderingOpenGL2-8.2.1.dylib (0x1100d5f80) and /usr/local/opt/vtk/lib/libvtkRenderingOpenGL2-9.0.1.dylib (0x11bc072b8). One of the two will be used. Which one is undefined.
zsh: segmentation fault  ./stereo

当我在我的 C++ 代码中使用 opencv 和 pcl lib 时,它构建成功,但在执行时我遇到了 vtk 错误。在我的系统中,pcl 使用 vtk@8.2,opencv 使用 vtk@9.0。我尝试删除一个版本的 vtk,但它没有构建那么如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

这是由于多个 vtk 版本。在运行 opengl 时,opencv 和 pcl 不止一次调用,这导致了一个包含循环。为了解决这个问题,我们必须在构建 OpenCV 时关闭 vtk form 依赖项。