catkin build 编译失败
Posted
技术标签:
【中文标题】catkin build 编译失败【英文标题】:catkin build fails to compile 【发布时间】:2018-07-02 11:04:50 【问题描述】:我正在尝试为 ROS 包中的示例教程编译构建文件。以下显示在终端中,
Errors << catkin_tools_prebuild:cmake /home/comet/mybot_ws/logs/catkin_tools_prebuild/build.cmake.009.log
CMake Error at /opt/ros/kinetic/share/catkin/cmake/safe_execute_process.cmake:11 (message):
execute_process(/home/comet/anaconda3/bin/python
"/opt/ros/kinetic/share/catkin/cmake/parse_package_xml.py"
"/opt/ros/kinetic/share/catkin/cmake/../package.xml"
"/home/comet/mybot_ws/build/catkin_tools_prebuild/catkin/catkin_generated/version/package.cmake")
returned error code No such file or directory
Call Stack (most recent call first):
/opt/ros/kinetic/share/catkin/cmake/catkin_package_xml.cmake:74 (safe_execute_process)
/opt/ros/kinetic/share/catkin/cmake/all.cmake:151 (_catkin_package_xml)
/opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:20 (include)
CMakeLists.txt:4 (find_package)
它似乎正在尝试访问 anaconda3 文件夹中的 python 编译器,但我最近已将其卸载。有什么想法可以修改文件以使其指向 /usr/bin python 吗?任何想法表示赞赏。非常感谢!
【问题讨论】:
最近刚刚解决,我在catkin build
之前执行了catkin clean
。
如果问题被其中一个答案解决,请接受(通过点击文本左侧的复选标记),以便将此问题标记为已解决。
@D.0417 您需要使用rosdep install <pkg-name>
安装该软件包的依赖项或使用apt-get
安装。未定义的包在 CMakeList 第 4 行。
【参考方案1】:
所以你的环境被污染有两种可能
-
您的
PATH
变量仍因指向您的 anaconda 位置而受到污染。请参阅 this question 以获取参考并删除 anaconda 条目。不要忘记打开一个新终端以应用更改
在获取 anaconda 环境的同时,您已经创建了本地 catkin 工作区。因此,您只需删除当前工作区中的build
和devel
,然后从头开始重建所有内容。
依次处理这两个步骤应该可以解决问题。
【讨论】:
【参考方案2】:最近刚刚解决,我在catkin build
之前执行了catkin clean
。
【讨论】:
我不明白为什么这被否决了。运行catkin clean
(相当于删除“build”和“devel”目录)应该始终是当catkin build 出现异常时首先尝试的事情之一。这绝对是一个合法且好的答案。以上是关于catkin build 编译失败的主要内容,如果未能解决你的问题,请参考以下文章
执行 catkin_make 时出错:调用“make -j1 -l1”失败
CMake 错误:catkin_make :::Running 命令运行命令:“/ws/build”中的“make -j4 -l4”