Jetson Orin Nano 8G JetPack 6.2.1
Isaac ROS 3.2 Docker container
Run ./scripts/run_dev.sh -i 'ros2_humble'
Then: dpkg -L ros-humble-gmock-vendor | xargs file
dpkg -L ros-humble-gmock-vendor shows there are source files under /opt/ros/humble/src/gmock_vendor, however entire directory is not present in my container.
The container is a fresh run, haven’t modified anything. And I pulled the image from nvcr.io.
Is my layer broken or something is wrong?
Thanks!
Hello @fishboneek,
Thanks for posting in the Isaac ROS forum!
Normally these gtest/gmock vendor source files are not needed for runtime usage, launch files or running ROS nodes. They are mainly needed when building Isaac ROS or user workspace packages with tests enabled, for example with BUILD_TESTING=ON.
Please try this workaround inside the Isaac ROS container:
sudo apt-get update
sudo apt-get install -y --reinstall ros-humble-gmock-vendor ros-humble-gtest-vendor
colcon build --cmake-args -DBUILD_TESTING=ON
Reinstalling the vendor packages should restore the missing source files under /opt/ros/humble/src.
If you do not need to build tests, you can avoid this path by disabling tests:
colcon build --cmake-args -DBUILD_TESTING=OFF
Yeah I can workaround by reinstalling the gmock-vendor, or skip testing. Just wondered why the files weren’t there, I really thought the layers might be corrupted due to network problem (problems caused by broken layers can be hard to diagnose, i wish it never happens)
This appears to be a known behavior in the Isaac ROS 3.2 Humble container image.
In most normal runtime or launch use cases it should not cause a problem.