Skip to content

Docker Build Error: L4T - Jetson Orin. Failed at libdraco-dev and ./ZED_SDK_Linux_JP.run: No such file or directory #314

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
2 tasks done
byu-awesome-rover opened this issue Mar 17, 2025 · 8 comments
Labels
bug Something isn't working

Comments

@byu-awesome-rover
Copy link

Preliminary Checks

  • This issue is not a duplicate. Before opening a new issue, please search existing issues.
  • This issue is not a question, feature request, or anything other than a bug report directly related to this project.

Description

I am trying to build a docker image for my jetson orin running jetpack 5.1.2 (l4t 35.4.1) I am just using the script to build the image:
./jetson_build_dockerfile_from_sdk_and_l4T_version.sh l4t-r35.4.1 zedsdk-4.2.3

Is there a min version of l4t?

Steps to Reproduce

  1. Using Jetson Orin with jetpack 5.1.2
  2. cloned the repo
  3. ran the scrip ./jetson_build_dockerfile_from_sdk_and_l4T_version.sh l4t-r35.4.1 zedsdk-4.2.3
    ...

Expected Result

The image should have built properly

Actual Result

./jetson_build_dockerfile_from_sdk_and_l4T_version.sh l4t-r35.4.1 zedsdk-4.2.3
rm: cannot remove './tmp_sources': No such file or directory
35 4
Building dockerfile for l4t-r35.4.1 and ZED SDK zedsdk-4.2.3
[+] Building 52.5s (10/20) docker:default
=> [internal] load build definition from Dockerfile.l4t-humble 0.0s
=> => transferring dockerfile: 5.31kB 0.0s
=> [internal] load metadata for docker.io/dustynv/ros:humble-ros-base-l4t-r35.4.1 0.6s
=> [auth] dustynv/ros:pull token for registry-1.docker.io 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> CACHED [ 1/15] FROM docker.io/dustynv/ros:humble-ros-base-l4t-r35.4.1@sha256:e9761a81548fb7b9f4b9c71ada4ea940839bb2c02ef2cfe1a2b41c903a2f14a0 0.0s
=> [internal] load build context 0.1s
=> => transferring context: 1.59MB 0.1s
=> [ 2/15] RUN if [ "$(curl -I "https://stereolabs.sfo2.cdn.digitaloceanspaces.com/zedsdk/4.2/ZED_SDK_Tegra_L4T35.4_v4.2.3.zstd.run" -o /dev/null -s -w '%{http_code}\n' | head -n 1)" = "200" ]; t 0.5s
=> [ 3/15] RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 42D5A192B819C5DA || true && apt-get update || true && apt-get install -y --no-install-recommends apt-utils dialog && r 16.8s
=> [ 4/15] RUN ln -snf /usr/share/zoneinfo/Europe/Paris /etc/localtime && echo Europe/Paris > /etc/timezone && apt-get update && apt-get install --yes lsb-release wget less udev sudo build-e 22.8s
=> ERROR [ 5/15] RUN echo "# R35 (release), REVISION: 4" > /etc/nv_tegra_release && apt-get update -y || true && apt-get install -y --no-install-recommends zstd wget less cmake curl gnupg2 11.6s

[ 5/15] RUN echo "# R35 (release), REVISION: 4" > /etc/nv_tegra_release && apt-get update -y || true && apt-get install -y --no-install-recommends zstd wget less cmake curl gnupg2 build-essential python3 python3-pip python3-dev python3-setuptools libusb-1.0-0-dev libgeographic-dev libdraco-dev zlib1g-dev -y && pip install protobuf && wget -q --no-check-certificate -O ZED_SDK_Linux_JP.run https://stereolabs.sfo2.cdn.digitaloceanspaces.com/zedsdk/4.2/ZED_SDK_Tegra_L4T35.4_v4.2.3.zstd.run && chmod +x ZED_SDK_Linux_JP.run ; ./ZED_SDK_Linux_JP.run silent skip_tools && rm -rf /usr/local/zed/resources/* && rm -rf ZED_SDK_Linux_JP.run && rm -rf /var/lib/apt/lists/*:
0.564 Get:1 http://packages.ros.org/ros2/ubuntu focal InRelease [4,685 B]
0.582 Get:2 https://repo.download.nvidia.com/jetson/common r35.4 InRelease [2,555 B]
0.707 Get:3 http://ports.ubuntu.com/ubuntu-ports focal InRelease [265 kB]
0.781 Get:4 http://packages.ros.org/ros2/ubuntu focal/main arm64 Packages [1,175 kB]
0.932 Get:5 https://repo.download.nvidia.com/jetson/common r35.4/main arm64 Packages [19.6 kB]
1.338 Get:6 http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease [128 kB]
1.495 Get:7 http://ports.ubuntu.com/ubuntu-ports focal-backports InRelease [128 kB]
1.651 Get:8 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease [128 kB]
1.809 Get:9 http://ports.ubuntu.com/ubuntu-ports focal/universe arm64 Packages [11.1 MB]
3.580 Get:10 http://ports.ubuntu.com/ubuntu-ports focal/multiverse arm64 Packages [139 kB]
3.582 Get:11 http://ports.ubuntu.com/ubuntu-ports focal/main arm64 Packages [1,234 kB]
3.768 Get:12 http://ports.ubuntu.com/ubuntu-ports focal/restricted arm64 Packages [1,317 B]
3.768 Get:13 http://ports.ubuntu.com/ubuntu-ports focal-updates/restricted arm64 Packages [67.6 kB]
3.781 Get:14 http://ports.ubuntu.com/ubuntu-ports focal-updates/universe arm64 Packages [1,500 kB]
4.016 Get:15 http://ports.ubuntu.com/ubuntu-ports focal-updates/multiverse arm64 Packages [25.1 kB]
4.258 Get:16 http://ports.ubuntu.com/ubuntu-ports focal-updates/main arm64 Packages [3,677 kB]
5.629 Get:17 http://ports.ubuntu.com/ubuntu-ports focal-backports/universe arm64 Packages [27.8 kB]
5.636 Get:18 http://ports.ubuntu.com/ubuntu-ports focal-backports/main arm64 Packages [54.8 kB]
5.644 Get:19 http://ports.ubuntu.com/ubuntu-ports focal-security/universe arm64 Packages [1,207 kB]
5.952 Get:20 http://ports.ubuntu.com/ubuntu-ports focal-security/main arm64 Packages [3,282 kB]
6.506 Get:21 http://ports.ubuntu.com/ubuntu-ports focal-security/restricted arm64 Packages [61.7 kB]
6.517 Get:22 http://ports.ubuntu.com/ubuntu-ports focal-security/multiverse arm64 Packages [18.1 kB]
6.796 Fetched 24.3 MB in 6s (3,801 kB/s)
6.796 Reading package lists...
8.801 Reading package lists...
10.75 Building dependency tree...
11.32 Reading state information...
11.47 E: Unable to locate package libdraco-dev
11.47 /bin/bash: ./ZED_SDK_Linux_JP.run: No such file or directory


Dockerfile.l4t-humble:53

52 |
53 | >>> RUN echo "# R${L4T_MAJOR} (release), REVISION: ${L4T_MINOR}" > /etc/nv_tegra_release &&
54 | >>> apt-get update -y || true &&
55 | >>> apt-get install -y --no-install-recommends zstd wget less cmake curl gnupg2
56 | >>> build-essential python3 python3-pip python3-dev python3-setuptools libusb-1.0-0-dev \
57 | >>> libgeographic-dev libdraco-dev zlib1g-dev -y &&
58 | >>> pip install protobuf &&
59 | >>> wget -q --no-check-certificate -O ZED_SDK_Linux_JP.run
60 | >>> ${ZED_SDK_URL} &&
61 | >>> chmod +x ZED_SDK_Linux_JP.run ; ./ZED_SDK_Linux_JP.run silent skip_tools &&
62 | >>> rm -rf /usr/local/zed/resources/* &&
63 | >>> rm -rf ZED_SDK_Linux_JP.run &&
64 | >>> rm -rf /var/lib/apt/lists/*
65 |

ERROR: failed to solve: process "/bin/bash -c echo "# R${L4T_MAJOR} (release), REVISION: ${L4T_MINOR}" > /etc/nv_tegra_release && apt-get update -y || true && apt-get install -y --no-install-recommends zstd wget less cmake curl gnupg2 build-essential python3 python3-pip python3-dev python3-setuptools libusb-1.0-0-dev libgeographic-dev libdraco-dev zlib1g-dev -y && pip install protobuf && wget -q --no-check-certificate -O ZED_SDK_Linux_JP.run ${ZED_SDK_URL} && chmod +x ZED_SDK_Linux_JP.run ; ./ZED_SDK_Linux_JP.run silent skip_tools && rm -rf /usr/local/zed/resources/* && rm -rf ZED_SDK_Linux_JP.run && rm -rf /var/lib/apt/lists/*" did not complete successfully: exit code: 127

ZED Camera model

ZED2

Environment

OS: Jetpack 5.1.2
CPU: ARM
GPU: Jetson Orin 
ZED_SDK: 4.2.3

Anything else?

No response

@byu-awesome-rover byu-awesome-rover added the bug Something isn't working label Mar 17, 2025
@Dave-van-der-Meer
Copy link

Hi,

I am having the same issue using the ZED-Box based on the Jetson Zavier NX.
I could also narrow it down to the libdraco-dev library.

On the host, when I search for this package, it cannot find it.

$ apt search libdraco-dev
Sorting... Done
Full Text Search... Done

I also use Jetpack 5.1.2 and I tried with ZED_SDK 4.1.3 and with ZED_SDK 4.2.3.

Is there any news on how to resolve this? Is there a timeline for the bug fix?
If you need more information, please let me know.

With kind regards,
Dave

@Myzhar
Copy link
Member

Myzhar commented Apr 7, 2025

You could consider installing it from the source:
https://github.com/google/draco

@Dave-van-der-Meer
Copy link

Indeed, I can install it from source. So I did.

When reaching the stage where it builds the ROS 2 packages, it fails. Here is the summary:

Summary: 30 packages finished [2min 51s]
  1 package failed: point_cloud_transport
  3 packages aborted: ament_cmake_mypy geographic_msgs zed_msgs
  17 packages had stderr output: ament_clang_format ament_clang_tidy ament_copyright ament_cppcheck ament_cpplint ament_flake8 ament_lint ament_lint_cmake ament_mypy ament_pclint ament_pep257 ament_pycodestyle ament_pyflakes ament_uncrustify ament_xmllint point_cloud_transport xacro
  20 packages not processed

I do not know if it is related to the draco library, but since point_cloud_transport fails, I assume it is related.

@Myzhar
Copy link
Member

Myzhar commented Apr 8, 2025

What's the build error? Can you share the full build report?

@Dave-van-der-Meer
Copy link

Here is the terminal output when I try to compile the point_cloud_transport package alone:

root@xavier01:~/ros2_ws# colcon build --parallel-workers $(nproc) --symlink-install --event-handlers console_direct+ --base-paths src --cmake-args ' -DCMAKE_BUILD_TYPE=Release' ' -DCMAKE_LIBRARY_PATH=/usr/local/cuda/lib64/stubs' ' -DCMAKE_CXX_FLAGS="-Wl,--allow-shlib-undefined"' ' --no-warn-unused-cli' --packages-select point_cloud_transport
Starting >>> point_cloud_transport
[  5%] Building CXX object gtest/CMakeFiles/gtest_main.dir/src/gtest_main.cc.o
[  5%] Building CXX object gtest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
[ 10%] Building CXX object CMakeFiles/point_cloud_transport.dir/src/point_cloud_codec.cpp.o
[ 10%] Building CXX object CMakeFiles/republish.dir/rclcpp_components/node_main_republish.cpp.o
In file included from /root/ros2_ws/src/point_cloud_transport/point_cloud_transport/include/point_cloud_transport/point_cloud_codec.hpp:45,
                 from /root/ros2_ws/src/point_cloud_transport/point_cloud_transport/src/point_cloud_codec.cpp:40:
/root/ros2_ws/src/point_cloud_transport/point_cloud_transport/include/point_cloud_transport/publisher_plugin.hpp:41:10: fatal error: rcpputils/tl_expected/expected.hpp: No such file or directory
   41 | #include <rcpputils/tl_expected/expected.hpp>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/point_cloud_transport.dir/build.make:76: CMakeFiles/point_cloud_transport.dir/src/point_cloud_codec.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:181: CMakeFiles/point_cloud_transport.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 12%] Linking CXX static library libgtest_main.a
[ 12%] Built target gtest_main
[ 15%] Linking CXX executable republish
[ 15%] Built target republish
[Processing: point_cloud_transport]
[ 17%] Linking CXX static library libgtest.a
[ 17%] Built target gtest
make: *** [Makefile:146: all] Error 2
--- stderr: point_cloud_transport
In file included from /root/ros2_ws/src/point_cloud_transport/point_cloud_transport/include/point_cloud_transport/point_cloud_codec.hpp:45,
                 from /root/ros2_ws/src/point_cloud_transport/point_cloud_transport/src/point_cloud_codec.cpp:40:
/root/ros2_ws/src/point_cloud_transport/point_cloud_transport/include/point_cloud_transport/publisher_plugin.hpp:41:10: fatal error: rcpputils/tl_expected/expected.hpp: No such file or directory
   41 | #include <rcpputils/tl_expected/expected.hpp>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/point_cloud_transport.dir/build.make:76: CMakeFiles/point_cloud_transport.dir/src/point_cloud_codec.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:181: CMakeFiles/point_cloud_transport.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:146: all] Error 2
---
Failed   <<< point_cloud_transport [37.7s, exited with code 2]

Summary: 0 packages finished [38.5s]
  1 package failed: point_cloud_transport
  1 package had stderr output: point_cloud_transport

If you need specific .log files from the ros2_ws/log directory, please let me know.

@Dave-van-der-Meer
Copy link

Also, is it possible that the humble version of the base image l4t-r35.4.1 from docker.io/dustynv/ros:humble-ros-base-l4t-r35.4.1 is no longer available? I can no longer find it in the list on the Docker Hub page.

@Myzhar
Copy link
Member

Myzhar commented Apr 9, 2025

@leroycorentin
Copy link

Hi, I had the same issue and I found some ways to solve it. I created PR #337 so even if it is not merged by Stereolabs I hope it can help you @byu-awesome-rover @Dave-van-der-Meer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Development

No branches or pull requests

4 participants