Any idea on this?
Why /etc/init.d/factory_default_recovery.sh is not included in the custom build yocto image of swi-fx30-cat1_2.0.0?
Please note that official image is having this file
Succeeding in creating new yocto image adding the missing layer in buid.sh script. I’m not sure I’have done the good way but it seams to work.
Also generate a bundle with my previous app and it works to.
I don’t exactly understand how sierra can delivers such wrong info for the system to build. Lots of mistakes in the delivery and in the docs. Very painfull to have something working.
Thanks a lot, very big big thanks to @jyijyi to be such patient with me.
I just found that you can compile by “make MACH=mdm9x28 PROD=fx30” and that layer is included:
owner@owner-ThinkPad-X220:~/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src$ ls
kernel lk mdm9x28 meta-gplv2 meta-swi poky
legato Makefile meta-columbia-x meta-openembedded meta-swi-extras
owner@owner-ThinkPad-X220:~/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src$ make MACH=mdm9x28 PROD=fx30
"meta-columbia-x/meta-columbia-x-cat1/build.sh" -p poky/ -o meta-openembedded/ -l meta-swi -x "kernel" -j 9 -t 9 -g -a "LEGATO_WORKDIR=/home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/legato/" -a "IMA_SUPPORT_TOOLS_DIR=/home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/legato/3rdParty/" -a "IMA_SUPPORT_TOOLS_REPO=file://ima-support-tools" -a "IMA_SUPPORT_TOOLS_NAME=ima-support-tools" -a LK_REPO_DIR="/home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src" -a LK_REPO_NAME="lk" -a LK_REPO="file://lk" -m swi-mdm9x28 -P fx30 -1 -b build_bin -q -U
Poky dir: /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/poky
OE meta: /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-openembedded
SWI meta dir: /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi
Linux repo dir: /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/kernel
Number of make threads 9
Number of bitbake tasks 9
With Legato
Extra options added - LEGATO_WORKDIR=/home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/legato/
Extra options added - IMA_SUPPORT_TOOLS_DIR=/home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/legato/3rdParty/
Extra options added - IMA_SUPPORT_TOOLS_REPO=file://ima-support-tools
Extra options added - IMA_SUPPORT_TOOLS_NAME=ima-support-tools
Extra options added - LK_REPO_DIR=/home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src
Extra options added - LK_REPO_NAME=lk
Extra options added - LK_REPO=file://lk
SWI machine: swi-mdm9x28
SWI product: fx30
SWI product family: fx
Build CAT1
Build dir: /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/build_bin
Enable Qualcomm Proprietary bin
Build columbia-x public release image
You had no conf/local.conf file. This configuration file has therefore been
created for you with some default values. You may wish to edit it to, for
example, select a different MACHINE (target hardware). See conf/local.conf
for more information as common configuration options are commented.
You had no conf/bblayers.conf file. This configuration file has therefore been
created for you with some default values. To add additional metadata layers
into your configuration please add entries to conf/bblayers.conf.
The Yocto Project has extensive documentation about OE including a reference
manual which can be found at:
http://yoctoproject.org/documentation
For more information about OpenEmbedded see their website:
http://www.openembedded.org/
### Shell environment set up for builds. ###
You can now run 'bitbake <target>'
Common targets are:
core-image-minimal
core-image-sato
meta-toolchain
meta-ide-support
You can also run generated qemu images with a command like 'runqemu qemux86'
+ layer: meta-oe
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-openembedded/meta-oe
+ layer: meta-networking
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-openembedded/meta-networking
+ layer: meta-python
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-openembedded/meta-python
+ layer: meta-gplv2
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-gplv2
+ layer: meta-swi/common
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi/common
+ layer: meta-swi/meta-swi-mdm9xxx
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi/meta-swi-mdm9xxx
+ layer: meta-swi/meta-swi-mdm9x28
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi/meta-swi-mdm9x28
+ layer: meta-swi/meta-swi-mdm9x28-fx30
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi/meta-swi-mdm9x28-fx30
+ layer: meta-swi-extras/common
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/common
+ layer: meta-swi-extras/meta-swi-mdm9x28
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/meta-swi-mdm9x28
+ layer: meta-swi-extras/meta-swi-mdm9xxx-bin
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/meta-swi-mdm9xxx-bin
+ layer: meta-swi-extras/meta-swi-mdm9x28-bin
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/meta-swi-mdm9x28-bin
+ layer: meta-swi-extras/meta-swi-mdm9x28-fx30-bin
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/meta-swi-mdm9x28-fx30-bin
+ layer: meta-swi-extras/meta-swi-mdm9x28-fx30
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/meta-swi-mdm9x28-fx30
+ layer: meta-columbia-x/rootfs
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-columbia-x/rootfs
+ layer: meta-columbia-x/meta-columbia-x-bsp
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-columbia-x/meta-columbia-x-bsp
+ layer: meta-columbia-x/meta-columbia-x-public
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-columbia-x/meta-columbia-x-public
+ layer: meta-columbia-x/meta-columbia-x-app
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-columbia-x/meta-columbia-x-app
+ layer: meta-columbia-x-cat1
-> /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-columbia-x/meta-columbia-x-cat1
Yocto machine: swi-mdm9x28-fx30
Adding option LEGATO_BUILD with value true
Adding option IMA_BUILD with value false
Adding option IMA_CONFIG with value
Adding option IMA_LOCAL_CA_X509 with value
Adding option IMA_PRIV_KEY with value
Adding option IMA_PUB_CERT with value
Adding option IMA_KERNEL_CMDLINE_OPTIONS with value
Adding option ENABLE_IMA with value 0
Adding option IMA_PUBLIC_CERT with value
Adding option IMA_PRIVATE_KEY with value
Adding option IMA_SMACK with value
Adding option ENABLE_FX30 with value true
Adding option ROOTFS_VERSION with value
Adding option LEGATO_ROOTFS_TARGETS with value wp76xx
Adding option LEGATO_WORKDIR with value /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/legato/
Adding option IMA_SUPPORT_TOOLS_DIR with value /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/legato/3rdParty/
Adding option IMA_SUPPORT_TOOLS_REPO with value file://ima-support-tools
Adding option IMA_SUPPORT_TOOLS_NAME with value ima-support-tools
Adding option LK_REPO_DIR with value /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src
Adding option LK_REPO_NAME with value lk
Adding option LK_REPO with value file://lk
Adding option EXT_SWI_IMG with value false
Adding option INITRAMFS_IMAGE_BUNDLE with value 1
Adding option INITRAMFS_IMAGE with value mdm9x28-image-initramfs
Adding option FIRMWARE_PATH with value
Adding option PACKAGECONFIG_remove with value gnutls
meta-columbia-x/meta-columbia-x-cat1/build.sh: line 854: [: =: unary operator expected
Build image of minimal rootfs (for swi-mdm9x28).
WARNING: /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/meta-swi-mdm9x28-bin/recipes/swimtd/swimtd_git.bb: Unable to get checksum for swimtd SRC_URI entry swimtd-bin.tar.bz2: file could not be found
Parsing recipes: 100% |########################################################| Time: 0:02:38
Parsing of 2167 .bb files complete (0 cached, 2167 parsed). 3086 targets, 339 skipped, 0 masked, 0 errors.
WARNING: No bb files matched BBFILE_PATTERN_swi-mdm9x28-fx30-bin '^/home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/meta-swi-extras/meta-swi-mdm9x28-fx30-bin/'
NOTE: Resolving any missing task queue dependencies
NOTE: Multiple providers are available for runtime gps-utils (gps-utils, gpsd)
Consider defining a PREFERRED_RPROVIDER entry to match gps-utils
Build Configuration:
BB_VERSION = "1.38.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "ubuntu-16.04"
TARGET_SYS = "arm-poky-linux-gnueabi"
MACHINE = "swi-mdm9x28-fx30"
DISTRO = "poky-swi-ext"
DISTRO_VERSION = "2.5.3"
TUNE_FEATURES = "arm armv7a vfp neon"
TARGET_FPU = "softfp"
meta
meta-poky
meta-yocto-bsp = "HEAD:cbb677e9a09d5dad34404a851f7c23aeb5122465"
meta-oe
meta-networking
meta-python = "HEAD:8760facba1bceb299b3613b8955621ddaa3d4c3f"
meta-gplv2 = "HEAD:813b7d2b5573d8591c6cd8087b326f0a0703d6b9"
common
meta-swi-mdm9xxx
meta-swi-mdm9x28
meta-swi-mdm9x28-fx30 = "HEAD:62a9465b731f6866cf159e11ceb037ba3242203d"
common
meta-swi-mdm9x28
meta-swi-mdm9xxx-bin
meta-swi-mdm9x28-bin = "HEAD:c0aad6c6bc29e4953e26a418824c4d55c3a73b74"
rootfs
meta-columbia-x-bsp
meta-columbia-x-app
meta-columbia-x-cat1
meta-columbia-x-public = "<unknown>:<unknown>"
meta-swi-mdm9x28-fx30-bin
meta-swi-mdm9x28-fx30 = "HEAD:c0aad6c6bc29e4953e26a418824c4d55c3a73b74"
NOTE: Fetching uninative binary shim from http://downloads.yoctoproject.org/releases/uninative/2.4/x86_64-nativesdk-libc.tar.bz2;sha256sum=06f91685b782f2ccfedf3070b3ba0fe4a5ba2f0766dad5c9d1642dccf95accd0
WARNING: Checksum mismatch for local file /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/build_bin/downloads/uninative/06f91685b782f2ccfedf3070b3ba0fe4a5ba2f0766dad5c9d1642dccf95accd0/x86_64-nativesdk-libc.tar.bz2
Cleaning and trying again.
WARNING: Renaming /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/build_bin/downloads/uninative/06f91685b782f2ccfedf3070b3ba0fe4a5ba2f0766dad5c9d1642dccf95accd0/x86_64-nativesdk-libc.tar.bz2 to /home/owner/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src/build_bin/downloads/uninative/06f91685b782f2ccfedf3070b3ba0fe4a5ba2f0766dad5c9d1642dccf95accd0/x86_64-nativesdk-libc.tar.bz2_bad-checksum_4b6fb2106c2f18b8f9c8ac67e1cf9e57
WARNING: Checksum failure encountered with premirror download of http://downloads.yoctoproject.org/releases/uninative/2.4/x86_64-nativesdk-libc.tar.bz2;sha256sum=06f91685b782f2ccfedf3070b3ba0fe4a5ba2f0766dad5c9d1642dccf95accd0 - will attempt other sources.
Initialising tasks: 100% |#####################################################| Time: 0:01:51
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
My compil line was :
MACH=mdm9x28 PROD=fx30 make
Then it was not the good command?
I used this one: “make MACH=mdm9x28 PROD=fx30” and I can include that layer “meta-swi-extras/meta-swi-mdm9x28-fx30”
It is just like we didn’t have the same sources.
In my Makefile (in swi-linux-src), it requires build.sh from meta-swi
In your Makefile, it seems like the build.sh is in swi-columbia-x.
We don’t have the same Makefile.
Should I replace the location for my build.sh? I do have the build in swi-columbia-x.
Regards
I don’t know now as i have no idea why we will download different source code.
You might give a try
I also suggest you download the source code again…
My Makefile is a link to meta-swi/repo.mk. What is yours?
Tomorrow, I’ll try to download again but I think the result will be the same.
git version for repo.mk is 0284a7905d6e30a0c4dce682f6c5580240ce155b
The FX30 is built on top of the WP module, so you must build using @jyijyi command.
If your build script is pointing to meta-swi and not meta-columbia, it means you have built for the WP module and will not contain the FX30 scripts.
BR,
Chris
Tomorrow, I’ll try a fresh download (for the fourth time I think). Yocto and bitbake are hard tools as it takes hours to compile and impossible to cancel.
Regards
It seems my downloaded source code is different from yours…
My Makefile is like this:
owner@owner-ThinkPad-X220:~/LEAF/test_swi-fx30-cat1_2.0.0/swi-linux-src$ ls -l Makefile
lrwxrwxrwx 1 owner owner 48 Jul 1 2021 Makefile -> meta-columbia-x/meta-columbia-x-cat1/external.mk
I have undestood the mistake and it is a good think to know about.
First I have downloaded the sources with leaf getsrc swi-linux . But I had some problems as it didn’t work as espected. The env variables were not set correctly when trying to generate.
Then I made the following command : “leaf getsrc swi-linux --disable” to try try the regular way and it has worked.
Next I did return to sources with “leaf getsrc swi-linux”. And It is the reason why the Makefile was not OK as calling the same the command a second time skips FX30 and Legato manifest and FX30 update steps saying it was already applied. My Makefile was wrong.
All is very complicated.
The files .fx30.updates.done and .fx30.legato.done in swi-linux-src should have been removed with the --disable option I think.
I have no idea, the download process is very straightforward to me.
I did not need to change anything…
You might change the Makefile to meta-columbia-x/meta-columbia-x-cat1/external.mk and see if you can compile a workable yocto image.
See previous answer. It is just incredible.
Hi,
If you get this going, please let us know. We gave up after months of trying to get it working.
I have found that different flavours of Linux and release versions give very different results. Can you share the link you used to create the linux install?
Thanks
Brett
I just used these commands to download and compile in my Ubuntu 16:
leaf setup test_swi-fx30-cat1_2.0.0 -p swi-fx30-cat1_2.0.0
leaf getsrc swi-linux
cd swi-linux
make MACH=mdm9x28 PROD=fx30
Hi @xgaillard,
It sounds like your yocto workspace is different from @jyijyi
Could you please try the following to delete the leaf internal files:
Remove the existing packages:
rm -rf ~/.leaf/fx30-cat1--src
rm ~/.cache/leaf/files/*
Then execute the getsrc command again to pull your source code.
If I recall correctly, the --disable will switch between using prebuilt binaries vs building from source via yocto.
BR,
Chris
I don’t exactly understand the question.
I did work with swi-fx30-cat1_2.0.0 package and I succeed in generating something with swi-linux-src working after mounth as yocto compil is so slow. I did mistakes, there is some traps (ubuntu version, shell, …).
I did generate a linux.cwe file working but can’t use leaf environment to generate a bundle with my legato app. Seams like env variables are not correct. But perhaps another mistake I’ve done.
For generating a bundle, I did use a self made Makefile that seems to work.
Next stage next year