Skip to content

Adding gnuradio to the Petalinux 2018.2 BSP based build for the Ultra96 board

Jan Schiefer edited this page Aug 2, 2018 · 3 revisions

Please note: There is now a new project PlusUltra, which is a ready-to-build version of the BSP code and gnuradio. Consider trying that instead.

These are some notes on how to add a bitbake recipe to Petalinux to enable gnuradio. Feel free to improve this document!

  • We are going to add a new Yocto layer to Petalinux, which will tell Yocto how to build gnuradio, and many of its dependencies. Luckily for us, @balister has defined such a layer already, which we will use.
  • Change directory to <proj_root>/project-spec.
  • Run git submodule add -b rocko https://github.com/balister/meta-sdr.git. This will download the code for the gnuradio layer into a submodule and switch to the "rocko" branch. Rocko is the version of Yocto used by Petalinux 2018.2.
  • Run petalinux-config
  • Select "Yocto settings -> User Layers ->"
  • Add the setting ${proot}/project-spec/meta-sdr
  • Exit out of the configuration screen, saving when prompted.
  • Verify by viewing the file in <proj_root>/build/conf/bblayers.conf. This should have a line at the end that refers to the meta-sdr directory.
  • Using your favourite editor, add a line to <proj_root>/project-spec/meta-user/recipes-core/images/petalinux-image.bbappend that says IMAGE_INSTALL_append = " gnuradio". Note the leading whitespace, which is significant.
  • Run petalinux-config -c rootfs
  • Select user packages -> gnuradio (NEW)
  • Run petalinux-build. This is going to take a while.
  • Once the build finishes, re-deploy the root file system, which now should contain a build of gnuradio.

For detailed instructions from Xilinx on how to customize the Petalinux rootfs, see chapter 7 of UG1144.