ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Indeed in bag.py Cryptodome
is referenced (permalink to the latest melodic-devel at the time):
from Cryptodome.Cipher import AES
Unfamilliar with this package, I'm curious where the dependency on this pkg is defined.
Barebone Ubuntu distro, or default python
? Looks like no.
$ docker run -it ubuntu:bionic bash
# apt update && apt install python
# python -c "import Cryptodome"
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named Cryptodome
Somewhere in base ROS? Looks like it.
$ docker run -it ros:melodic-ros-base bash
root@ccde9d6e77bd:/# python -c "import Cryptodome"
root@ccde9d6e77bd:/#
# apt-cache policy python-pycryptodome
python-pycryptodome:
Installed: 3.4.7-1ubuntu1
Candidate: 3.4.7-1ubuntu1
Version table:
*** 3.4.7-1ubuntu1 100
100 /var/lib/dpkg/status
Indeed rosbag package itself defines it.
So, if you followed any standard way to (build/)install rosbag
(and others), the missing package should have been beautifully installed automatically (by rosdep install
that references to package.xml
of each package and installs missing packages). I can only recommend that you review your installation steps. But, b/c there are other people who are stuck with the same error msg e.g. #q331160, I'd say there _may_ be a corner case that the installtion steps haven't captured yet (In that case we should fix. Please consider updating your description, or open a ticket. For a starter I'd say ros_comm is ok).