ros运行catkin_make报警:No module named em......

2023-05-16

ros运行catkin_make报警:No module named em......

    • 问题描述
    • 我的解决方法
    • 待续
    • 参考链接

问题描述

在跟着ros教程学习“创建ros消息和ros服务”(http://wiki.ros.org/cn/ROS/Tutorials/CreatingMsgAndSrv)时:添加了msg和srv之后,在终端中执行catkin_make命令报错了,编译失败的原因首先是ModuleNotFoundError: No module named ‘em’

Traceback (most recent call last):
  File "/opt/ros/kinetic/share/gencpp/cmake/../../../lib/gencpp/gen_cpp.py", line 41, in <module>
    import genmsg.template_tools
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/genmsg/template_tools.py", line 39, in <module>
    import em
ModuleNotFoundError: No module named 'em'
beginner_tutorials/CMakeFiles/beginner_tutorials_generate_messages_cpp.dir/build.make:63: recipe for target '/home/skipper/catkin_ws/devel/include/beginner_tutorials/Num.h' failed
make[2]: *** [/home/skipper/catkin_ws/devel/include/beginner_tutorials/Num.h] Error 1
CMakeFiles/Makefile2:1192: recipe for target 'beginner_tutorials/CMakeFiles/beginner_tutorials_generate_messages_cpp.dir/all' failed
make[1]: *** [beginner_tutorials/CMakeFiles/beginner_tutorials_generate_messages_cpp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

寻找了许多解决方法例如执行命令python -m pip install empypip install em,仍然不能直接解决问题。

$ python -m pip install empy
/home/skipper/.local/lib/python2.7/site-packages/pip/_vendor/requests/__init__.py:83: RequestsDependencyWarning: Old version of cryptography ([1, 2, 3]) may cause slowdown.
  warnings.warn(warning, RequestsDependencyWarning)
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Requirement already satisfied: empy in /usr/lib/python2.7/dist-packages (3.3.2)

我的解决方法

运行了python -m pip install empy命令后,发现empy是成功地安装在了/usr/lib/python2.7/dist-packages中,而不是编译时报错的**/opt/ros/kinetic/lib/python2.7/dist-packages**中,因此尝试是否可以将empy.py文件从/usr复制到/ros中去:

sudo cp /usr/lib/python2.7/dist-packages/em.py /opt/ros/kinetic/lib/python2.7/dist-packages/

然后重新打开一个终端,在工作空间中再次执行catkin_make命令,发现编译成功:

skipper@ren9000:~/catkin_ws$ catkin_make
Base path: /home/skipper/catkin_ws
Source space: /home/skipper/catkin_ws/src
Build space: /home/skipper/catkin_ws/build
Devel space: /home/skipper/catkin_ws/devel
Install space: /home/skipper/catkin_ws/install
####
#### Running command: "make cmake_check_build_system" in "/home/skipper/catkin_ws/build"
####
####
#### Running command: "make -j8 -l8" in "/home/skipper/catkin_ws/build"
####
[  0%] Built target std_msgs_generate_messages_py
[  0%] Built target std_msgs_generate_messages_nodejs
[  0%] Built target std_msgs_generate_messages_eus
[  0%] Built target std_msgs_generate_messages_lisp
[  0%] Built target std_msgs_generate_messages_cpp
[  0%] Built target _beginner_tutorials_generate_messages_check_deps_AddTwoInts
[  0%] Built target _beginner_tutorials_generate_messages_check_deps_Num
[ 53%] Generating C++ code from beginner_tutorials/AddTwoInts.srv
[ 38%] Built target beginner_tutorials_generate_messages_lisp
[ 38%] Generating C++ code from beginner_tutorials/Num.msg
[ 61%] Built target beginner_tutorials_generate_messages_eus
[ 84%] Built target beginner_tutorials_generate_messages_py
[100%] Built target beginner_tutorials_generate_messages_nodejs
[100%] Built target beginner_tutorials_generate_messages_cpp
Scanning dependencies of target beginner_tutorials_generate_messages
[100%] Built target beginner_tutorials_generate_messages

待续

这个只是我的解决方法,至于这样直接复制有没有问题,还不知道——可能只能解决了编译问题,不能解决潜在的其他问题。

参考链接

ros自定义消息的时候报错ImportError: No module named em
https://blog.csdn.net/wawayu_0/article/details/79460043

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ros运行catkin_make报警:No module named em...... 的相关文章

  • 在哪里可以找到 OCaml Option 模块?

    我的意思是这个模块 Option http ocaml lib sourceforge net doc Option html 我找不到它 open Option给我Error Unbound module Option并且没有 optio
  • aplay: main:831: 音频打开错误: 没有这样的文件或目录

    当我运行这段代码时 import pyttsx3 engine pyttsx3 init engine say Hello World engine runAndWait 表明 aplay main 831 audio open error
  • Python os.path是ntpath,怎么办?

    谁能告诉我Python如何 别名 os path to ntpath gt gt gt import os path gt gt gt os path
  • SCOM 上的 PowerShell 无法导入模块

    我有一个问题 如果没有帮助 我无法解决 我在第一台 PC 上有 SCOM 在第二台 PC 上有 SCOM 代理 当我的类在代理 PC 中发现时 它必须运行 PowerShell 脚本 该脚本包含命令 导入模块故障转移集群 但此命令失败并出现
  • 在错误位置寻找模块的代码

    我使用 build dojotoolkit org 我的第一次尝试 创建了一个包含 3 层的多层构建 dojo js dojox js dijit js 每个 js 文件都上传到自己的文件夹中 dojo dojox dijit 当我运行代码
  • Python导入类型检测

    python 模块可以检测是否已导入import module or from module import 就像是 if something something print Directly imported with import nam
  • 如何以轮子格式安装 Python 库?

    我正在寻找有关如何以轮格式安装 Python 库的教程 它看起来并不简单 所以我希望有一个简单的分步教程 说明如何为 CPython 安装名为 requests 的模块 我从以下位置下载的 https pypi python org pyp
  • 更新到 Xcode 10.2、Swift 5 后找不到“NBPhoneNumberDesc.h”文件

    我正在使用吊舱chronotruck Flag电话号码 https github com chronotruck FlagPhoneNumber issues 103我刚刚更新自High Sierra Xcode 10 1 Swift 4
  • Rails:如何为 ruby​​ 模块编写测试?

    我想知道如何为混合到几个类中的模块编写单元测试 但不太知道如何去做 我是否通过在包含它们的类的测试文件之一中编写测试来测试实例方法 似乎不正确 或者您可以以某种方式将所包含方法的测试保留在特定于模块的单独文件中吗 同样的问题也适用于类方法
  • 扩展无法启用或安装的问题

    php 7 3 5 你好 我的扩展 ext http 有问题 composer 说我缺少 ext http 即使我在composer json 中写了这个 为什么 这就是这个确切的消息 问题1 您的系统中缺少请求的 PHP 扩展 ext h
  • Node.js:如何从模块内获取需要函数的文件名?

    我试图从需要模块功能的地方获取原始文件名 我知道你可以使用 filename获取当前文件 但我想获取原始文件 例如 我有一个简单的模块 模块 js module exports function return print function
  • Python 上的 io.open() 和 os.open() 有什么区别?

    我意识到open 我一直在使用的函数是一个别名io open 以及导入 from os会掩盖这一点 通过以下方式打开文件有什么区别io模块和os module io open 是文件 I O 的首选高级接口 它将操作系统级文件描述符包装在一
  • excel vba 将 system.collections.hashmap 导入模块

    从我的内心微软 Excel 2010安装我已经打开了Visual Basic 编辑器 选项卡开发工具 gt Visual Basic 在 的里面Visual Basic 编辑器我右键单击进入项目窗口并创建了一个module 插入 gt 模块
  • Python:如何导入与子包同名的模块?

    我还没有遇到这个问题 但我很好奇如何导入与子包同名的模块 例如 可能的模块结构可能如下所示 mymodule init py string py 现在 如果我需要mymodule string分包and the string每个 Pytho
  • go:找到模块但不包含包

    我正在尝试安装 go 的网络包 但收到 不包含包错误 终端截图 我咨询过 go 模块 latest 已找到但不包含包 https stackoverflow com questions 62974985 go module latest f
  • 如何全局公开 es6 模块

    我需要编写一个可在全局窗口上使用的模块 我使用 es6 创建模块 我定义的每个类都有它自己的文件 我正在使用 webpack 来 babelify 并捆绑这些类 我的模块的入口点也是包含要公开的全局的文件 我尝试了各种方法来实现这一点 包括
  • 在另一个模块中扩展 Ruby 模块,包括模块方法

    每当我尝试扩展 ruby 模块时 我都会丢失模块方法 include 和extend 都不会执行此操作 考虑一下片段 module A def self say hi puts hi end end module B include A e
  • 如何防止模块被导入两次?

    在编写python模块时 有没有办法防止它被客户端代码导入两次 就像 c c 头文件一样 ifndef XXX define XXX endif 非常感谢 Python 模块不会被多次导入 仅运行两次 import 不会重新加载模块 如果你
  • 如何在 Windows 上的 Python 2.7 上安装 Tensorflow?

    我尝试通过 pip 安装 TensorFlow pip install tensorflow 但是得到这个错误 找不到满足tensorflow要求的版本 来自版本 这个问题有解决办法吗 我还是想通过pip安装 如果您只因为 Keras 而需
  • Rust 中为什么有 mod 关键字?

    看完之后this https doc rust lang org book crates and modules html 我想知道为什么有一个mod关键字和mod rs 我假设目录层次结构也可以描述模块 必须显式声明模块有几个原因 模块可

随机推荐

  • 多目标优化_学习笔记(三)MOEA/D

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习多目标优化中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 REMARK xff1
  • VNCViewer实现与WIN端文本复制粘贴

    主机系统 xff1a Win10 View端系统 xff1a Ubuntu 16 04 VNCViewer xff1a 6 17 今天踩的第二个坑 xff0c 主要还是因为懒 xff0c 有时候懒得打那么多字 xff0c 就想着和虚拟机一用
  • FGSM(Fast Gradient Sign Method)_学习笔记+代码实现

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 FGSM xff08 Fast
  • DeepFool对抗算法_学习笔记

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 DeepFool算法 特点 xf
  • 对抗样本黑箱攻击UPSET、ANGRI_学习笔记

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 DeepFool算法 特点 xf
  • One pixel 对抗攻击_学习笔记

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 One pixel 对抗攻击算法
  • 对抗样本可转移性与黑盒攻击_学习笔记

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 对抗样本可转移性与黑盒攻击深入研
  • VNC安装记录

    又是一次痛苦的安装过程 xff0c 记录一下避免再次踩坑 sudo apt get install tightvncserver 我安装的是tightvncserver 这个版本 xff0c 网上也有很多是vnc4server xff0c
  • ubuntu升级python版本

    Ubuntu16 04默认安装了Python2 7和3 5 请注意 xff0c 系统自带的python千万不能卸载 xff01 输入命令python 按Ctrl 43 D退出python命令行 输入命令sudo add apt reposi
  • Python microseconds 显示问题,及毫秒显示方法

    系统环境Ubuntu14 04 Python3 5 问题由来 xff1a 优化程序函数运行时间 xff0c 由于输入数据量比较大 xff0c 所以恰好且与1秒左右 xff0c 之前数据量小的数据集测试时用微秒 xff08 microseco
  • 关于ssh: connect to host XXX port 22: Connection timed out的解决办法

    今天想试着建立一个ss xff0c 结果犯了很多人在这里都会出现的错误 xff0c SSH连接不上 下面展现了笔者解决这个问题的流程 一 xff1a 查看master和data1 3的IP地址 当直接对data1 data2 data3进行
  • Matlab 应用GPU加速

    由于GPU近几年地迅速发展 xff0c GPU在多线程计算等方面逐渐超越CPU成为计算的主力军 而Matlab是常用的数学应用软件 xff0c 现在讲解一下如何在Matlab中使用GPU加速计算 文章目录 0 必要条件1 给GPU传输数据1
  • crt + xManager 远程打开linux 图形界面

    因为想要使用eclipse所以看了一下如何远程显示图形界面 1 安装eclipse c 43 43 xff1a sudo apt get install eclipse sudo apt get install eclipse cdt 2
  • keras.layers.upsampling2d

    span class token keyword from span keras span class token punctuation span layers span class token keyword import span U
  • (二)MapReduce整体流程

    1 MapReduce工作流程 1 MapReduce核心思想 图6 xff1a 采用 分而治之 思想 xff0c 将大数据集拆分到多个小数据块 xff0c 再转到多台机器上并行处理 总的来说Map任务独立执行被分割的数据 xff0c Re
  • 在 Linux 系统下使用badblocks检测硬盘上的坏道和坏块

    让我们从坏道和坏块的定义开始说起 xff0c 它们是一块磁盘或闪存上不再能够被读写的部分 xff0c 一般是由于磁盘表面特定的物理损坏或闪存晶体管失效导致的 随着坏道的继续积累 xff0c 它们会对你的磁盘或闪存容量产生令人不快或破坏性的影
  • 【已解决】NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver 的报错

    问题描述 基于ubuntu16 04 xff0c 本人在更换一次系统下载源后 xff0c 误操作进行了内核升级 执行以下查看cuda命令 xff1a nvidia smi 出现如下提示 xff1a NVIDIA SMI has failed
  • python在图片上画矩形

    python在图片上画矩形 image path 61 39 39 image 61 cv2 imread image path first point 61 100 100 last point 61 100 100 cv2 rectan
  • Java中的线程池(3)----SingleThreadExecutor

    本文简单介绍Java中的另一种线程池 SingleThreadExecutor 创建SingleThreadExecutor的静态方法 首先还是先看一下创建SingleThreadExecutor的Executors下的静态方法 xff1a
  • ros运行catkin_make报警:No module named em......

    ros运行catkin make报警 xff1a No module named em 问题描述我的解决方法待续参考链接 问题描述 在跟着ros教程学习 创建ros消息和ros服务 http wiki ros org cn ROS Tuto