3 Replies Latest reply on Feb 24, 2021 8:33 AM by narrucmot

    How to add packages on top of Avnet's petalinux project




      So first of all I ran the BSP-Avnet-script and everything was working properly.

      After this, I took the project that was created and trying to build it, and I face this error Petalinux-build error: No kickstart files from WKS_FILES were found , which I finally solved it and running `petalinux-build -c avnet-image-full`. When I try to run `petalinux-build` it still not works.

      Now I am trying to add meta-ros layer above of meta-avnet but it gives me errors on the `petalinux-build` command .


      Need to mention that meta-ros layer works fine without meta-avnet, and builds successfully if i run `petalinux-build -c ros-image-core`.
      So each layer is building fine alone. How I can build both layers together? I am not famililar with petalinux, just started.


      Thanks for the assistance!

        • Re: How to add packages on top of Avnet's petalinux project

          How have you added your "meta-ros" layer?  What are the contents of the meta-ros/conf/layer.conf file?


          When we started adding the meta-avnet layer to our BSP builds we needed to make sure we specified a lower yocto priority (BBFILE_PRIORITY_meta-avnet = "5") than the PetaLinux meta-user layer (BBFILE_PRIORITY_meta-user = "6").  I suspect you may need to experiment with this setting for your meta-ros layer.


          More about yocto layers can be found here:

          You can look at the yocto layers used in the BSP build in the ./build/conf/bblayers.conf file for the BSP.  DO NOT edit this file, though, because it is automatically generated by PetaLinux.



          1 of 1 people found this helpful
            • Re: How to add packages on top of Avnet's petalinux project

              I downloaded the meta-ros layer from github, then I checkout to zeus branch (as I am using tools 2020.1), then imported the meta-layer in `petalinux-config` after meta-avnet. Also added some packages to the rootfs.config

              Here you can see some of the layer.conf, left is one of the meta-ros layers and right is the meta-avnet.

              I want to build `image-avnet-full` and `ros-image-core`. How can I build both of these in the same build? This is the most important question I need to answer, as they both working alone.


              Also I played with the PRIORITY of meta-avnet and can't get it done. I tried higher values like 7-12 and lower values like 3-4. Still have the same error:


              Need to mention that this error occurs after importing to yocto-layers the meta-ros layers. Before adding meta-ros layers, building of avnet-image-full is successful.
              I see that meta-ros priority has higher-values 10-12, and meta-avnet has 5. So I don't see why this error occurs... Any ideas of how to approach this?

              I am thinking if I build the ros-image-core in a separate project, can I merge the rootfs somehow?


                • Re: How to add packages on top of Avnet's petalinux project

                  Hi Alexander,


                  Since you are using meta-ros I presume you are building some sort of robot using the Ultra96-V2 board?  Can you share anything about it?


                  I am not aware of any way to specify more than one PetaLinux build option at a time (e.g. petalinux-build -c <> -c <>).  For the avnet-image-full build the rootfs configuration is specified in the ${PROOT}/project-spec/meta-avnet/recipes-core/images/avnet-image-full.inc file.  There should be a similar file in the meta-ros layer?  Maybe you could try merging the two rootfs configurations together to start as an experiment, or merge the meta-avnet and meta-ros layers together?  I am sorry it appears you are in uncharted territory here and blazing your own trail.  I am interested in your success here and will continue to help as I can.