Search code examples
amazon-web-servicesyoctoaws-iot-greengrass

Compatibility of meta-aws with different Yocto versions


I'm trying to build a Yocto image for a AWS Greengrass Core Device using meta-aws layer. I'm really new to this topic, so I already stuck at the very beginning... It seems as there are compatibility problems of meta-aws with older Yocto versions.

I've already created an image for my hardware (i.MX8MP processor) and this is running fine. The Yocto version I'm using is Hardknott. Now I would like to add the AWS features. Hence I've cloned meta-aws layer to my source directory and checked out branch "hardknott" and also added the layer to my Yocto project. But when I try to bitbake the image, I always get parsing errors in severel recipes of meta-aws. The problem is, that in many recipes the "new" override syntax ":" instead of "_" is used, which was introduced with Honister. I'm really wondering about this, as there is an explicit branch for Hardknott. Why is this branch using a syntax which is not compatible with Hardknott?

Could anybody explain this to me and may have a solution to this? I already searched in the web, but information about intergrating meta-aws to Yocto project is really rare.

Thanks a lot in advance!


Solution

  • Huh. Well, that's inconvenient. A glance at the repo looks like they updated many of the recipes in the Hardknott branch of meta-aws, but some of those newer recipes use the new syntax, which would break the build as you describe. I'd submit this as an issue to the repo. Otherwise, fix the syntax yourself until it builds. If there are multiple versions of the recipe available perhaps try using PREFERRED_VERSION to select an earlier recipe that may have the correct syntax.