catkin_make编译过程中出现的问题: “/opt/ros/melodic/share/catkin/cmake/toplevel.cmake“.

前言:学ros有一段时间了,但是前面一直是在ubuntu16版本上跑的,还没有在18和20版本上跑过ros,所以这两天在虚拟机中分别装了18和20版本的Ubuntu。下面是我在ubuntu18里编译工程时出现的问题并解决的过程。

1、catkin_make过程中出现的问题:

CMake Error at CMakeLists.txt:1:
  Parse error.  Expected a command name, got unquoted argument with text
  "/opt/ros/melodic/share/catkin/cmake/toplevel.cmake".
-- Configuring incomplete, errors occurred!
Invoking "cmake" failed


2、在网上查了一些资料,大家给出的解决方案是以下这些:

CMakeLists.txt 一般有以下三种解决办法:
1.Cmake 升级;
2.utf8编码的bug: vim 打开 :set nobomb :wq;
3.查看代码每行末尾是否有多余空格(复制来的代码末尾有空格);

于是我就照着以上方法检查opt/ros/melodic/share/catkin/cmake路径下toplevel.cmake文件,试了一会儿发现没有效果。

接着看到这位大哥的问题后((15条消息) ROS航海计划:P(二)_steptoward的博客-CSDN博客),我突然想到我src里CMakeLists.txt文件的内容是这样的。

catkin_make编译过程中出现的问题: “/opt/ros/melodic/share/catkin/cmake/toplevel.cmake“._第1张图片

然后赶紧把opt/ros/melodic/share/catkin/cmake路径下toplevel.cmake文件里的内容复制到CMakeLists.txt里,问题就解决啦!

操作步骤如下:

(1)打开终端输入:gedit /opt/ros/melodic/share/catkin/cmake/toplevel.cmake 

(2)将toplevel.cmake 内容复制到src/CMakeLists.txt文件中

(3)再次编译就没问题啦

你可能感兴趣的:(人工智能)