2

I am attempting to build a Windows toolchain from Yocto (running on Linux) so that we can use a different build system to build applications for our embedded device. Yocto is running on Ubuntu 18.04.

I looked at Can't generate SDK for Windows with Yocto and How do I generate a toolchain for Windows using Yocto? and have added meta-mingw to my Yocto work directory; I am running Yocto Zeus, so I cloned it with command git clone git://git.yoctoproject.org/meta-mingw -b zeus and added it to my bblayers.conf file. I also added SDK_ARCH = "x86_64" to my local.conf

I am building the toolchain by running bitbake meta-toolchain. I am trying to build a set of 64 bit binaries (we have had out of memory issues with our existing 32-bit Linaro toolchain).

I am seeing the install script as you would expect in /home/gen-ccm-root/workdir/tools/poky/build-dev/tmp/deploy/sdk but all the binaries it built were Linux ELF files. What step am I missing? I didn't see how to do this in the Yocto SDK manual (https://www.yoctoproject.org/docs/3.0/sdk-manual/sdk-manual.html) Is there a different document I should be looking at?

A couple of other things I have tried:

Changing SDK_ARCH in my local.conf to SDK_ARCH = "x86_64-mingw64" which didn't rebuild anything (after I built the Linux toolchain above)

Adding #SDKMACHINE ?= "x86_64-mingw64" to the local.conf

I tried mingw32 as well since that is what is in the layer conf.

Eskimoalva
  • 449
  • 8
  • 20
  • You probably have different layers checked out at different Yocto releases. All layers in use should be checked out at their zeus branch or a branch that advertises zeus support (i.e. `zeus` in `conf/layer.conf`'s `LAYERSERIES_COMPAT_meta-xxx`). – qschulz Aug 19 '20 at 10:14
  • I am not sure how, but some layer somewhere got hosed. I will edit the question, it now builds, but it isn't building a Windows toolchain, it is building a Linux toolchain, so there is a missing step somewhere. – Eskimoalva Aug 19 '20 at 17:51

1 Answers1

1

meta-toolchain doesn't appear to work anymore.

In the end, I added meta-mingw to my bblayers.conf and the following to my local.conf:

SDKMACHINE = "x86_64-mingw32"
SDK_ARCHIVE_TYPE = "zip"

And, after building building my project, used the following to build the SDK: bitbake mi-dev -c populate_sdk where mi-dev is my build.

Eskimoalva
  • 449
  • 8
  • 20