Building Custom Yocto Image


I noticed earlier today that I’m running Ubuntu 18.04 LTS and Yocto 2.2 only officially supports 16.04 LTS. I’m not sure why compiling qemu would give the static declaration of ‘memfd_create’ follows non-static declaration error on 18.04 and not 16.04 (maybe a different version of gcc or something else build related?). Long story short, it does look like I’m now able to successfully build yocto for WP76XX as well as the toolchain.

1 Like


I had these problems as well. I think it’s because the 18.04 Ubuntu uses a newer version of gcc that has stricter checking. I ended up fixing the various warnings/errors one at a time until I got a successful build. I’ve flashed that onto my mangOH Red and it works fine.
For this error, on line 40 of wp77xx-yocto/yocto/build_bin/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c, I just removed the “static” on memfd_create().

Unfortunately, I’m not really familiar with how to do things “right” in Yocto so I don’t have patches for what I changed or I’d post them. If I remember right (I did this about 2 weeks ago) all the errors were things other people had hit with Yocto and 18.04. I haven’t tried creating a Ubuntu 16.04 VM to build with.




Thanks for the insights. I figured it had something to do with the gcc version. I’m probably going to stick with 16.04 LTS for now just to avoid any headaches.

I too need to learn a lot more about Yocto and figure out how to add patches, packages, etc. I’m more familiar with Buildroot than Yocto.

On a related note, @dfrey do you know what the update / release schedule at Sierra looks like for Yocto/Linux? I see the WP76XX source (as of Release 9) is using Yocto 2.2 and Kernel 3.18.44. I realize it isn’t feasible to stay on mainline Yocto and the kernel with each new official firmware release, but I do have some concerns pushing 3.18 to new devices we are developing that are supposed to have a 5 year life-cycle.