编译 intel-ros realsense 出错 Invoking “make -j4 -l4“ failed module ‘em‘ has no attribute ‘Interpreter

错误如下

Traceback (most recent call last):
  File "/opt/ros/melodic/share/gencpp/cmake/../../../lib/gencpp/gen_cpp.py", line 43, in <module>
    import genmsg.template_tools
  File "/opt/ros/melodic/lib/python2.7/dist-packages/genmsg/template_tools.py", line 39, in <module>
    import em
ModuleNotFoundError: No module named 'em'
realsense/realsense2_camera/CMakeFiles/realsense2_camera_generate_messages_cpp.dir/build.make:63: recipe for target '/home/szyd/catkin_ws/devel/include/realsense2_camera/IMUInfo.h' failed
make[2]: *** [/home/szyd/catkin_ws/devel/include/realsense2_camera/IMUInfo.h] Error 1
make[2]: *** Waiting for unfinished jobs....
Traceback (most recent call last):
  File "/opt/ros/melodic/share/gencpp/cmake/../../../lib/gencpp/gen_cpp.py", line 43, in <module>
    import genmsg.template_tools
  File "/opt/ros/melodic/lib/python2.7/dist-packages/genmsg/template_tools.py", line 39, in <module>
    import em
ModuleNotFoundError: No module named 'em'
realsense/realsense2_camera/CMakeFiles/realsense2_camera_generate_messages_cpp.dir/build.make:70: recipe for target '/home/szyd/catkin_ws/devel/include/realsense2_camera/Extrinsics.h' failed
make[2]: *** [/home/szyd/catkin_ws/devel/include/realsense2_camera/Extrinsics.h] Error 1
CMakeFiles/Makefile2:2777: recipe for target 'realsense/realsense2_camera/CMakeFiles/realsense2_camera_generate_messages_cpp.dir/all' failed
make[1]: *** [realsense/realsense2_camera/CMakeFiles/realsense2_camera_generate_messages_cpp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 54%] Built target realsense2_camera_generate_messages_eus
[ 58%] Linking CXX shared library /home/szyd/catkin_ws/devel/lib/libddynamic_reconfigure.so
[ 58%] Built target ddynamic_reconfigure
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j4 -l4" failed

秉持着缺什么装什么的原则

python3 -m pip install em

然后继续编译,结果

Traceback (most recent call last):
  File "/opt/ros/melodic/share/gencpp/cmake/../../../lib/gencpp/gen_cpp.py", line 50, in <module>
    sys.argv, msg_template_map, srv_template_map)
  File "/opt/ros/melodic/lib/python2.7/dist-packages/genmsg/template_tools.py", line 213, in generate_from_command_line_options
    generate_from_file(argv[1], options.package, options.outdir, options.emdir, options.includepath, msg_template_dict, srv_template_dict)
  File "/opt/ros/melodic/lib/python2.7/dist-packages/genmsg/template_tools.py", line 154, in generate_from_file
    _generate_msg_from_file(input_file, output_dir, template_dir, search_path, package_name, msg_template_dict)
  File "/opt/ros/melodic/lib/python2.7/dist-packages/genmsg/template_tools.py", line 99, in _generate_msg_from_file
    search_path)
  File "/opt/ros/melodic/lib/python2.7/dist-packages/genmsg/template_tools.py", line 77, in _generate_from_spec
    interpreter = em.Interpreter(output=ofile, globals=g, options={em.RAW_OPT:True,em.BUFFERED_OPT:True})
AttributeError: module 'em' has no attribute 'Interpreter'
realsense/realsense2_camera/CMakeFiles/realsense2_camera_generate_messages_cpp.dir/build.make:63: recipe for target '/home/szyd/catkin_ws/devel/include/realsense2_camera/IMUInfo.h' failed
make[2]: *** [/home/szyd/catkin_ws/devel/include/realsense2_camera/IMUInfo.h] Error 1
make[2]: *** Deleting file '/home/szyd/catkin_ws/devel/include/realsense2_camera/IMUInfo.h'
CMakeFiles/Makefile2:2777: recipe for target 'realsense/realsense2_camera/CMakeFiles/realsense2_camera_generate_messages_cpp.dir/all' failed
make[1]: *** [realsense/realsense2_camera/CMakeFiles/realsense2_camera_generate_messages_cpp.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 70%] Linking CXX executable /home/szyd/catkin_ws/devel/lib/ddynamic_reconfigure/test_bool_dynamic_reconfigure_server
[ 70%] Built target test_bool_dynamic_reconfigure_server
[ 75%] Linking CXX executable /home/szyd/catkin_ws/devel/lib/ddynamic_reconfigure/ddynamic_reconfigure_auto_update_test
[ 75%] Built target ddynamic_reconfigure_auto_update_test
[ 79%] Linking CXX executable /home/szyd/catkin_ws/devel/lib/ddynamic_reconfigure/fake_dynamic_reconfigure_server
[ 79%] Built target fake_dynamic_reconfigure_server
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j4 -l4" failed

这时候,会想到是不是因为python中存在模块名相同的包,导致了这个错误
查完资料后发现,em 和 empy 在导入时名字都是 import em
所以我们只需要这样,这样,然后再这样就能编译成功编译啦

python3 -m uninstall em
python3 -m install empy
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值