dusty-nv / jetson-containers

Machine Learning Containers for NVIDIA Jetson and JetPack-L4T
MIT License
2.13k stars 440 forks source link

how to use "apt install ros-humble-*" on ros humble docker #284

Open snmsung716 opened 1 year ago

snmsung716 commented 1 year ago

Hi I am using jetson agx orin 64gb and a docker image which has ros2 humble desktop.

Then I tried to type apt install ros-humble-gazabo-dev but got an error unable to use ros-humble-gazebo-dev.

So I typed apt list and found ros-humble doesn't exist on the list. It has only two ros-versions, galitic and rolling inside the list.

In this case, should I do "build from source" to get some ros-humble-repos?

Thank you for reading this issue.

dusty-nv commented 1 year ago

Hi @snmsung716, ROS Humble only has apt/deb packages available for Ubuntu 22.04 (which will be coming in JetPack 6), but on JetPack 5 / 20.04 you would build from source. AGX Orin can build ros desktop in like an hour though, so not too bad.

One thing you can do, is mount a directory for your ROS2 workspace, and build the additional packages you want from source, while running ros:humble-desktop container.

You could also write your own Dockerfile which used ros:humble-desktop as base container, and rosinstall_generator to pull the sources of the packages you want: https://github.com/dusty-nv/jetson-containers/blob/47aa733d9a1c21b08e9333a627718f98d733539c/packages/ros/ros2_build.sh#L79

Or you can just add the packages you want right there and re-build ros:humble-desktop. The downside of this, is if there are errors related to a package you added, you'll have to go through the full build again.

omerts commented 9 months ago

@dusty-nv Even with Jetpack 6.0, apt install is failing (made sure to run sudo apt update && ros dep update before):

#0 732.6 You might want to run 'apt --fix-broken install' to correct these.
#0 732.6 The following packages have unmet dependencies:
#0 732.8  libopencv-viz-dev : Depends: libopencv-core-dev (= 4.5.4+dfsg-9ubuntu4) but it is not going to be installed
#0 732.8  ros-humble-ament-cmake-cppcheck : Depends: ros-humble-ament-cppcheck but it is not going to be installed
#0 732.8  ros-humble-cv-bridge : Depends: libopencv-dev but it is not going to be installed
#0 732.8 E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
#0 733.1 Reading package lists...
#0 736.7 Building dependency tree...
#0 737.3 Reading state information...
#0 737.3 You might want to run 'apt --fix-broken install' to correct these.
#0 737.3 The following packages have unmet dependencies:
#0 737.5  libopencv-viz-dev : Depends: libopencv-core-dev (= 4.5.4+dfsg-9ubuntu4) but it is not going to be installed
#0 737.6  ros-humble-cv-bridge : Depends: libopencv-dev but it is not going to be installed
#0 737.6  ros-humble-pcl-ros : Depends: libpcl-dev but it is not going to be installed
#0 737.6                       Depends: ros-humble-pcl-conversions but it is not going to be installed
#0 737.6 E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
#0 737.8 Reading package lists...
#0 741.5 Building dependency tree...
#0 742.1 Reading state information...
#0 742.2 You might want to run 'apt --fix-broken install' to correct these.
#0 742.2 The following packages have unmet dependencies:
#0 742.4  libopencv-viz-dev : Depends: libopencv-core-dev (= 4.5.4+dfsg-9ubuntu4) but it is not going to be installed
#0 742.4  ros-humble-camera-info-manager : Depends: ros-humble-camera-calibration-parsers but it is not going to be installed
#0 742.4  ros-humble-cv-bridge : Depends: libopencv-dev but it is not going to be installed
#0 742.4 E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
#0 742.7 Reading package lists...
#0 746.2 Building dependency tree...
#0 746.7 Reading state information...
#0 746.8 You might want to run 'apt --fix-broken install' to correct these.
#0 746.8 The following packages have unmet dependencies:
#0 746.9  libopencv-viz-dev : Depends: libopencv-core-dev (= 4.5.4+dfsg-9ubuntu4) but it is not going to be installed
#0 747.0  ros-humble-cv-bridge : Depends: libopencv-dev but it is not going to be installed
#0 747.0  ros-humble-image-geometry : Depends: libopencv-dev but it is not going to be installed
#0 747.0 E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
#0 774.5 ERROR: the following rosdeps failed to install
#0 774.5   apt: command [apt-get install -y ros-humble-nav2-bringup] failed
#0 774.5   apt: command [apt-get install -y ros-humble-nav2-util] failed
#0 774.5   apt: command [apt-get install -y ros-humble-xacro] failed
#0 774.5   apt: command [apt-get install -y ros-humble-imu-tools] failed
#0 774.5   apt: command [apt-get install -y ros-humble-tf-transformations] failed
#0 774.5   apt: command [apt-get install -y ros-humble-tf2-ros] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-copyright] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-flake8] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-pep257] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-cmake] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rclcpp] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rclcpp-components] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rcutils] failed
#0 774.5   apt: command [apt-get install -y ros-humble-cv-bridge] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-cmake-pytest] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-lint-auto] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-lint-common] failed
#0 774.5   apt: command [apt-get install -y ros-humble-launch] failed
#0 774.5   apt: command [apt-get install -y ros-humble-launch-testing] failed
#0 774.5   apt: command [apt-get install -y ros-humble-launch-testing-ros] failed
#0 774.5   apt: command [apt-get install -y ros-humble-launch-testing-ament-cmake] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rmw-implementation-cmake] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rclcpp-action] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rclcpp-lifecycle] failed
#0 774.5   apt: command [apt-get install -y ros-humble-visualization-msgs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-nav2-msgs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-nav-msgs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-geometry-msgs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-builtin-interfaces] failed
#0 774.5   apt: command [apt-get install -y ros-humble-nav2-costmap-2d] failed
#0 774.5   apt: command [apt-get install -y ros-humble-nav2-core] failed
#0 774.5   apt: command [apt-get install -y ros-humble-pluginlib] failed
#0 774.5   apt: command [apt-get install -y ros-humble-std-srvs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-action-msgs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rosidl-default-runtime] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rosidl-default-generators] failed
#0 774.5   apt: command [apt-get install -y ros-humble-tf2] failed
#0 774.5   apt: command [apt-get install -y ros-humble-tf2-geometry-msgs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-nav2-common] failed
#0 774.5   apt: command [apt-get install -y ros-humble-nav2-behavior-tree] failed
#0 774.5   apt: command [apt-get install -y ros-humble-rosidl-adapter] failed
#0 774.5   apt: command [apt-get install -y python3-smbus] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-cmake-auto] failed
#0 774.5   apt: command [apt-get install -y python3-tornado] failed
#0 774.5   apt: Failed to detect successful installation of [ros-humble-nav2-bringup]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-xacro]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-imu-tools]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-tf-transformations]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-ament-flake8]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-ament-pep257]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-cv-bridge]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-ament-lint-auto]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-ament-lint-common]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-launch-testing-ros]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-nav2-costmap-2d]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-nav2-core]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-nav2-behavior-tree]
#0 774.5   apt: Failed to detect successful installation of [python3-smbus]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-ament-cmake-auto]
#0 774.5   apt: command [apt-get install -y ros-humble-apriltag-msgs] failed
#0 774.5   apt: command [apt-get install -y ros-humble-apriltag] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-cmake-clang-format] failed
#0 774.5   apt: command [apt-get install -y ros-humble-ament-cmake-cppcheck] failed
#0 774.5   apt: command [apt-get install -y ros-humble-pcl-ros] failed
#0 774.5   apt: command [apt-get install -y ros-humble-camera-info-manager] failed
#0 774.5   apt: command [apt-get install -y ros-humble-image-geometry] failed
#0 774.5   apt: Failed to detect successful installation of [ros-humble-apriltag-msgs]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-apriltag]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-ament-cmake-clang-format]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-ament-cmake-cppcheck]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-pcl-ros]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-camera-info-manager]
#0 774.5   apt: Failed to detect successful installation of [ros-humble-image-geometry]

I don't know if it is also related, but also getting the following errors:

/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libGLX_indirect.so.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvargus.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvbuf_fdmap.so.1.0.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libVkLayer_json_gen.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvbufsurface.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvdsbufferpool.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libvulkansc.so.1.0.10 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvpvaintf.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvisp.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvrm_mem.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvddk_vic.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libv4l2_nvcuvidvideocodec.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvoggopus.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvphsd.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvtvmr_2d.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvphs.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvscibuf.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmmlite.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvos.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-glvkspirv.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvosd.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvplayfair.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libv4l2_nvvideocodec.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libcuda.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvomx.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvgov_il.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libgstnvdsseimeta.so.1.0.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvtracebuf.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvdsbufferpool.so.1.0.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvcam_imageencoder.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-ml.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvfnetstoredefog.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-tls.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-nvvm.so.4 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmm.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-vksc-core.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvcapture.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmedia_iep_sci.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvcamerautils.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvvideoencode_ppe.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-vksc-core.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvscicommon.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-rtcore.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvgov_force.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvv4lconvert.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvparser.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmedia_eglstream.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvcolorutil.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvgov_gpucompute.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvcamlog.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvrm_stream.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-vksc-core.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvdecode2eglimage.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libgstnvcustomhelper.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-ptxjitcompiler.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvgov_spincircle.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-allocator.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmedia.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-eglcore.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvscistream.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnveglstreamproducer.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libsensors_hal.nvs.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmm_parser.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-ptxjitcompiler.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvexif.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvpvaumd.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libjetsonpower.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvtegrahv.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvscicommon.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvtvmr.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libvulkansc.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmedialdc.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvgov_boot.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmedia_isp_ext.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-egl-wayland.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvargus_socketserver.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvbufsurface.so.1.0.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvscistream.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-glcore.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvscf.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvbufsurftransform.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvvideo.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvisp_utils.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmedia_ide_parser.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvgov_generic.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvvic.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvrm_gpu.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvmedia_ijpe_sci.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libvulkansc.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-egl-gbm.so.1.1.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libnvidia-gpucomp.so.540.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/libtegrav4l2.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/weston/libilmCommon.so.2.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/weston/libilmClient.so.2.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/weston/libilmControl.so.2.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/weston/libweston-6.so.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/weston/libweston-desktop-6.so.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/nvidia/weston/libilmInput.so.2.2.0 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnveglglessink.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosink.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideo4linux2.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnveglstreamsrc.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvcompositor.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvidconv.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvvideosinks.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvv4l2camerasrc.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvjpeg.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvtee.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvivafilter.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvdrmvideosink.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvegltransform.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstnvarguscamerasrc.so is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra-egl/ld.so.conf is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra-egl/libGLESv2_nvidia.so.2 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra-egl/libGLESv1_CM_nvidia.so.1 is empty, not checked.
/sbin/ldconfig.real: File /usr/lib/aarch64-linux-gnu/tegra-egl/libEGL_nvidia.so.0 is empty, not checked.

This is our dockerfile:

ARG NVIDIA_IMAGE=dustynv/ros:humble-ros-base-l4t-r36.2.0
ARG ROS_DISTRO=humble
ARG OVERLAY_WS=/opt/ros/nakai

FROM $NVIDIA_IMAGE AS deps_installer

WORKDIR /opt

COPY ./deploy/pylon /tmp/deploy/pylon

RUN apt-get update \
 && apt-get install -qq -y --no-install-recommends \
    build-essential \
    cmake \
    git \
    libssl-dev \
    libusb-1.0-0-dev \
    pkg-config \
    libgtk-3-dev \
    libglfw3-dev \
    libgl1-mesa-dev \
    libglu1-mesa-dev \    
    curl \
    python3 \
    python3-dev \
    python3-pip \
    libpq-dev \
    ca-certificates \
    desktop-file-utils \
    /tmp/deploy/pylon/*.deb \
 && rm -rf /var/lib/apt/lists/*

RUN rm -rf /tmp/deploy/pylon

RUN sudo -H pip3 install -U jetson-stats==4.2.3 SQLAlchemy psycopg2 Jetson.GPIO

FROM deps_installer as builder

ARG OVERLAY_WS

WORKDIR ${OVERLAY_WS}

COPY ./src ${OVERLAY_WS}/src

RUN pip3 install -e ./src/nakai_common 

# Install ROS2 deps
RUN apt-get update && \ 
    rosdep update && \
    rosdep install -r -y --from-paths src --ignore-src \
    && rm -rf /var/lib/apt/lists/*

RUN source ${ROS_ROOT}/install/setup.bash && \
    colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-skip-build-finished 
    # Add --merge-install after this is more stable

RUN mkdir -p /opt/ros/nakai/db

# Source entrypoint setup
ENV OVERLAY_WS ${OVERLAY_WS}

COPY ./deploy/ros_entrypoint.sh /
dusty-nv commented 9 months ago

@omerts I think the issue may be related to mix-and-matching the 'apt install' method and the 'from source' method. After which command in the dockerfile does You might want to run 'apt --fix-broken install' to correct these. start appearing?

You probably don't even need to use my ROS container as base, since you can just install the whole thing from apt now.

omerts commented 9 months ago

@dusty-nv Thank you for the quick reply :). I will try and update. Is there any special handling for being able to use opencv with cuda?