Skip to content

[BUG] Using local libusb build in ROS kilted branch? #1496

@amarburg

Description

@amarburg

Describe the bug

I am trying to build a Docker image based on the ros:kilted image (based on Ubuntu 24.04) which contains depthai-core and depthai-ros.

My preferred solution is for depthai-core and depthai-ros to be built in a colcon workspace. Using the current kilted branch of both allows this.

However I've found most builds are unable to detect the USB device after boot (throws X_LINK_DEVICE_NOT_FOUND) from within Docker.

The only working solution I have found is to force the system to use the locally-built libusb. Since the kilted branch does not build this library, I build the develop branch from source outside of colcon, then copy the resulting local libusb in place of the system libusb:

sudo cp ./build/vcpkg_installed/x64-linux/lib/libusb-1.0.so /lib/x86_64-linux-gnu/libusb-1.0.so.0.4.0
sudo ldconfig

Which is clearly not a great idea.

At a high level, is this an issue with system libusb that necessitates using a custom version? Or an issue with the ROS2 build path for depthai-core where it is not building a local libusb when it should?

There's some connection to this forum post

Expected behavior

Expect a "straight path" to building depthai-core and depthai-ros with local libusb, either both within colcon, or depthai-core with cmake --target install and depthai-ros via colcon.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions