鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    CMAKE编译错误

    已定时 已固定 已锁定 已移动
    综合问题
    ros 编译报错 moveit
    2
    6
    1.2k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 8212348778
      心中有梦想!
      最后由 编辑

      CMake Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
      Could not find a package configuration file provided by "manipulation_msgs"
      with any of the following names:

      manipulation_msgsConfig.cmake
      manipulation_msgs-config.cmake
      

      Add the installation prefix of "manipulation_msgs" to CMAKE_PREFIX_PATH or
      set "manipulation_msgs_DIR" to a directory containing one of the above
      files. If "manipulation_msgs" provides a separate development package or
      SDK, be sure it has been installed.
      Call Stack (most recent call first):
      marm_planning/CMakeLists.txt:10 (find_package)

      -- Configuring incomplete, errors occurred!
      See also "/home/ros/catkin_ws/build/CMakeFiles/CMakeOutput.log".
      See also "/home/ros/catkin_ws/build/CMakeFiles/CMakeError.log".
      Invoking "cmake" failed

      哪位大神能解决这个问题?万分感谢!!!!!

      小鱼小 1 条回复 最后回复 回复 引用 0
      • 小鱼小
        小鱼 技术大佬 @821234877
        最后由 小鱼 编辑

        @821234877 注意格式哈!

        @小鱼 在 提问前必看!一定要看!必须看一下! 中说:

        1. 不要截图,要复制粘贴,一定要代码块包裹
          不要截图的原因是,代码方便回答者去复制帮你搜索,而且无论是在手机上还是电脑上都更容易看。

        用代码块包裹是为了更加美观,不会一个代码很长一段,不易阅读

        问题解决方案也很简单

        1. 先去检索一下这个包是否发布了二进制版的,检索网站
        2. 如果发布了
        sudo apt install ros-版本代号-manipulation-msgs
        
        1. 如果未发布,源码安装

        @小鱼 在 常见问题之安装ROS功能包时提示找不到 中说:

        有鱼粉问经常因为某一些功能包安装时找不到,来问小鱼原因,比如在ubuntu20上安装cartographer这个包。

        如果你使用下面这条指令肯定会报错

        sudo apt install ros-neotic-cartographer
        

        原因时什么呢?

        很简单,作者没有打包发布这个包的二进制安装文件,通过ROS的官网就可以查知。
        cartographer

        那该怎么办呢?

        功能包的获取一般有两种方式。

        1. 安装获取

        安装一般使用

        sudo apt install ros-<version>-package_name
        

        2. 手动编译获取

        手动编译相对麻烦一些,需要下载源码然后进行编译生成相关文件。

        什么时候需要手动编译呢?一般我们能安装的功能包都是作者编译好程序将可执行文件上传到仓库中,然后我们才能够通过apt进行安装,如果作者还没来得及测试上传,或者忘记了测试上传,就会找不到对应的包,这时候就需要手动编译安装了。

        另外一种就是我们需要对包的源码进行修改,这个时候也需要自己编译修改。

        手动编译之后,需要手动source工作空间目录。

        所以我们可以根据wiki上所给出的git地址,使用git clone ,下载源码,编译安装(记得切换分支哦)

        新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

        8212348778 1 条回复 最后回复 回复 引用 0
        • 小鱼小 小鱼 从 中的 社区&开源 移动了该主题
        • 8212348778
          心中有梦想! @小鱼
          最后由 编辑

          @小鱼 0a531206-cb4f-4ec6-a686-38bb8f52be25-image.png

          小鱼老师 这个安装包没有noetic版本的啊

          小鱼小 1 条回复 最后回复 回复 引用 0
          • 小鱼小
            小鱼 技术大佬 @821234877
            最后由 编辑

            @821234877 看样子这个包发布到kinetic就没了,你需要手动下载编译哈。

            1. 找到它的gitub地址
            2. clone 到你工程的src文件夹下
            3. 切换分支(看看有没有melodic分支)

            新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

            8212348778 1 条回复 最后回复 回复 引用 0
            • 8212348778
              心中有梦想! @小鱼
              最后由 编辑

              @小鱼 在 CMAKE编译错误 中说:

              melodic

              我的系统是noetic,为什么要找melodic分支?

              小鱼小 1 条回复 最后回复 回复 引用 0
              • 小鱼小
                小鱼 技术大佬 @821234877
                最后由 编辑

                @821234877 举个例子哈,你给的信息里也看不出来你的那个版本的😊 😊

                新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                1 条回复 最后回复 回复 引用 0
                • 第一个帖子
                  最后一个帖子
                皖ICP备16016415号-7
                Powered by NodeBB | 鱼香ROS