Hi
I am trying and failing to build a Yocto cross compile toolchain for the LS1046. I am doing this so that I have a cross compiler for building applications for this target.
Here's what I've tried:
Both these will successfully generate yocto builds but the sdk steps fail at the end.
On Ubuntu 20:
ERROR: nativesdk-qemu-7.1.0-r0 do_patch: Applying patch '0001-qemu-Reinstated-syscall-emulation-through-libc-via-c.patch' on target directory '/data/Yocto_Langdale/build_ls1046afrwy/tmp/work/x86_64-nativesdk-fslsdk-linux/nativesdk-qemu/7.1.0-r0/qemu-7.1.0'
CmdError('quilt --quiltrc /data/Yocto_Langdale/build_ls1046afrwy/tmp/work/x86_64-nativesdk-fslsdk-linux/nativesdk-qemu/7.1.0-r0/recipe-sysroot-native/etc/quiltrc push', 0, 'stdout: Applying patch 0001-qemu-Reinstated-syscall-emulation-through-libc-via-c.patch
patching file linux-user/main.c
Hunk #1 succeeded at 398 with fuzz 1 (offset 20 lines).
Hunk #2 succeeded at 478 (offset 34 lines).
patching file linux-user/qemu.h
Hunk #1 FAILED at 370.
1 out of 1 hunk FAILED -- rejects in file linux-user/qemu.h
On Ubuntu U22:
Error:
Problem: package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target from oe-repo conflicts with /bin/sh provided by ubuntu-main-22.04.2-r0.aarch64 from oe-repo
- package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target from oe-repo conflicts with perl provided by ubuntu-main-22.04.2-r0.aarch64 from oe-repo
- package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target from oe-repo conflicts with bash provided by ubuntu-main-22.04.2-r0.aarch64 from oe-repo
Is there a Yocto build which will generate a cross compile toolchain for the FRWY-LS1046A?
A Yocto Project build requires some packages that must be installed for the Yocto Project build.
To set up the Yocto Project build, navigate to the Yocto Project Quick Start and check for the packages that
must be installed for your build machine.
The essential Yocto project host packages are given below:
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm rsync curl
After this:
Install the repo utility:
$ mkdir ~/bin
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
$ PATH=${PATH}:~/bin
Download the Yocto Project BSP for Layerscape
$ mkdir distro $ cd distro $ repo init -u https://github.com/nxp-qoriq/yocto-sdk.git -b mickledore -m ls-6.1.55-2.2.0_distro.xml $ repo sync
Start a layerscape build in distro folder:
$ source distro-setup-env -m ls1046afrwy
Build the layerscape image:
$ bitbake ls-image-main # build main image for networking feature
# generate composite firmware for Layerscape machines
$ bitbake qoriq-composite-firmware
$ bitbake generate-boottgz
Thanks for the reply but it does not answer my question. You describe how to build a Yocto image which I can already do.
The next step fails - bitbake ls-image-main -c populate_sdk. This should generate a cross compile toolchain to allow developers to install the cross-compiler for this target.