ros / meta-ros

OpenEmbedded Layers for ROS 1 and ROS 2
MIT License
381 stars 252 forks source link

ROS2 foxy on Yocto 3 (zeus) #1023

Closed folibis closed 9 months ago

folibis commented 2 years ago

I have an image built using Yocto. The version is 3.0 (zeus) and unfortunately I can't change/upgrade it since that come from the board supplier. So I've cloned the zeus branch: git clone --single-branch --branch zeus https://github.com/ros/meta-ros.git and added the layer to bblayrs.conf: BBLAYERS += "${BSPDIR}/sources/meta-ros/meta-ros2-foxy" Unfortunately the build failed with error:

ERROR: Layer ros2-foxy-layer is not compatible with the core layer which only supports these series: zeus

What did I wrong and how to fix that?

apbr commented 2 years ago

Tried also adding meta-ros-common and meta-ros2?

DasRoteSkelett commented 2 years ago

From reading through it:

meta-ros2-foxy/conf/layer.conf:LAYERSERIES_COMPAT_ros2-foxy-layer = "${ROS_OE_RELEASE_SERIES}"

and

meta-ros-common/conf/ros-distro/ros-distro.conf:ROS_OE_RELEASE_SERIES = "zeus"

Which is required when including meta-ros-common. Hence, @apbr should be right, this should be fixed by including the other layers as well:

LAYERDEPENDS_ros2-foxy-layer = " \
    core \
    meta-python \
    openembedded-layer \
    ros-common-layer \
    ros2-layer \
"
robwoolley commented 9 months ago

This appears to have been answered. Also, foxy and zeus are no longer supported.