【问题标题】:ROS link issue: "No rule to make target vtk6.2"ROS 链接问题:“No rule to make target vtk6.2”
【发布时间】:2021-03-13 11:39:01
【问题描述】:

我正在尝试编译一个由我开发的 ROS 项目,它只会在 Ubuntu 16.04 虚拟机上给我带来编译问题。 (通常构建的默认电脑始终是 Ubuntu 16.04 发行版,唯一的区别是现在我在虚拟机上)。

我正在尝试构建的软件包之一取决于

#include <pcl/visualization/pcl_visualizer.h>

其中包括对vtk6.2的依赖。

我很确定 vtk6.2 已默认安装在 Ubuntu 16.04 发行版上(或者我以前安装过但我不记得了)。 确实,如果我在终端上执行以下命令

$ locate vtk-6.2

结果输出是一堵包含所有文件的文本墙:

  • /usr/include/vtk-6.2/**
  • /usr/bin/**
  • /usr/lib/cmake/vtk-6.2/**
  • /usr/lib/python2.7/dist-packages/vtk/**
  • /usr/lib/tcltk/vtk-6.2/**
  • /usr/lib/x86_64-linux-gnu/libvtk*
  • /usr/share/vtk-6.2/**

因此,似乎依赖项已经存在并且可以使用,因为它们安装在正确的路径上。

不幸的是,当我尝试使用catkin_make -j1 编译时,输出提示以下错误:

make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libvtkproj4-6.2.so.6.2.0', needed by '...'.  Stop.
CMakeFiles/Makefile2:14528: recipe for target '...' failed

非常感谢任何帮助。

【问题讨论】:

    标签: c++ linux makefile ros catkin


    【解决方案1】:

    只是为了重新链接,使用libvtkCommonCore-6.2.so,如下:

    > sudo ln -s /usr/lib/x86_64-linux-gnu/libvtkCommonCore-6.2.so /usr/lib/x86_64-linux-gnu/libvtkproj4-6.2.so.6.2.0
    
    > sudo ln -s /usr/lib/x86_64-linux-gnu/libvtkproj4-6.2.so.6.2.0 /usr/lib/x86_64-linux-gnu/libvtkproj4-6.2.so.6.2
    
    > sudo ln -s /usr/lib/x86_64-linux-gnu/libvtkproj4-6.2.so.6.2 /usr/lib/x86_64-linux-gnu/libvtkproj4-6.2.so
    

    【讨论】:

      猜你喜欢
      • 2021-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-10
      • 2021-11-22
      • 1970-01-01
      • 2019-09-15
      • 2016-11-19
      • 1970-01-01
      相关资源
      最近更新 更多