zed-ros2-wrapper: Could NOT find CUDA (missing: CUDA_CUDART_LIBRARY) (found version "10.2") [BUG]

Describe the bug Running colcon build --symlink-install --cmake-args=-DCMAKE_BUILD_TYPE=Release on a Docker image based on Jetpack 4.4 on Jetson Xavier NX. I got the following error

Starting >>> zed_components
--- stderr: zed_components
CMake Error at /usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
  Could NOT find CUDA (missing: CUDA_CUDART_LIBRARY) (found version "10.2")
Call Stack (most recent call first):
  /usr/share/cmake-3.10/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.10/Modules/FindCUDA.cmake:1080 (find_package_handle_standard_args)
  CMakeLists.txt:46 (find_package)
---
Failed   <<< zed_components [5.19s, exited with code 1]

Device information:

  • OS: Ubuntu
  • OS 18.04
  • CPU: Jeston Xavier NX
  • GPU Nvidia: Volta
  • ZED SDK Version: 3.3
  • ROS Wrapper version: eloquent

To Reproduce Steps to reproduce the behavior:

  1. Create a docker image based on nvcr.io/nvidia/l4t-base:r32.4.4
  2. Install the dependencies for the SDK.
  3. Install the ZED SDK 3.3:
RUN apt-get update -y && apt-get install --no-install-recommends lsb-release wget less udev sudo apt-transport-https -y && \
    echo "# R32 (release), REVISION: 4" > /etc/nv_tegra_release ; \
    wget -q --no-check-certificate -O ZED_SDK_Linux_JP.run https://download.stereolabs.com/zedsdk/3.3/jp44/jetsons && \
    chmod +x ZED_SDK_Linux_JP.run ; ./ZED_SDK_Linux_JP.run silent && \
    rm -rf /usr/local/zed/resources/* \
    rm -rf ZED_SDK_Linux_JP.run && \
    rm -rf /var/lib/apt/lists/*

#This symbolic link is needed to use the streaming features on Jetson inside a container
RUN ln -sf /usr/lib/aarch64-linux-gnu/tegra/libv4l2.so.0 /usr/lib/aarch64-linux-gnu/libv4l2.so

RUN cd src ; git clone --branch eloquent https://github.com/stereolabs/zed-ros2-wrapper.git && \
   cd .. && \
   . /opt/ros/$ROS2_DISTRO/setup.sh && \
   rosdep install --from-paths src --ignore-src -r -y && \
   colcon build --symlink-install --cmake-args=-DCMAKE_BUILD_TYPE=Release
  1. Build the Docker image.

Expected behavior I expect to have the wrapper package building correctly.

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 16 (8 by maintainers)

Most upvoted comments

Good. I suggest you to use the master branch. The eloquent branch was created for development and has just been merged into the master branch. It will be deleted

Now it is working, I had to source all the ROS2 ws I had.

RUN apt-get update -y && configure_python && \
    cd src ; git clone --branch eloquent https://github.com/stereolabs/zed-ros2-wrapper.git && \
    cd .. && \
    . /opt/ros/eloquent/setup.sh && . $ROS2_WS/install/setup.sh && \
    rosdep install --from-paths src --ignore-src -r -y && \
    colcon build --symlink-install --cmake-args " -DCMAKE_BUILD_TYPE=Release" " -DCMAKE_LIBRARY_PATH=/usr/local/cuda/lib64/stubs" " -DCUDA_CUDART_LIBRARY=/usr/local/cuda/lib64/stubs" " -DCMAKE_CXX_FLAGS='-Wl,--allow-shlib-undefined'"

Are you using ROS2 Eloquent?