-
Notifications
You must be signed in to change notification settings - Fork 158
Description
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.