Discussion:
[yocto] Basic question: "core-image-minimal" v.s "core-image-base" ?
Jerry Lian
2017-10-06 20:40:05 UTC
Permalink
Hi, all:

I have a basic question: how to tell the difference between
"core-image-minimal" and "core-image-base"?
* If we look at file* \poky\meta\recipes-core\images\core-image-base.bb
<http://core-image-base.bb>*
===================================================================================
SUMMARY = "A console-only image that fully supports the target device
hardware."

IMAGE_FEATURES += "splash"

LICENSE = "MIT"

inherit core-image
===================================================================================
* how can we tell that "core-image-base" will include "support for a
variety of hardware such as WIFI, bluetooth...", as compare to
"core-image-minimal"?
* Do I miss any other document that I need to read?

Thanks!
Jerry
Jerry Lian
2017-10-09 15:08:54 UTC
Permalink
Hi, all:

I have a basic question: how to tell the difference between
"core-image-minimal" and "core-image-base"?
* If we look at file* \poky\meta\recipes-core\images\core-image-base.bb
<http://core-image-base.bb>*
============================================================
=======================
SUMMARY = "A console-only image that fully supports the target device
hardware."

IMAGE_FEATURES += "splash"

LICENSE = "MIT"

inherit core-image
============================================================
=======================
* how can we tell that "core-image-base" will include "support for a
variety of hardware such as WIFI, bluetooth...", as compare to
"core-image-minimal"?
* Do I miss any other document that I need to read?

Thanks!
Burton, Ross
2017-10-10 22:07:19 UTC
Permalink
Post by Jerry Lian
I have a basic question: how to tell the difference between
"core-image-minimal" and "core-image-base"?
* If we look at file* \poky\meta\recipes-core\images\core-image-base.bb
<http://core-image-base.bb>*
============================================================
=======================
SUMMARY = "A console-only image that fully supports the target device
hardware."
IMAGE_FEATURES += "splash"
LICENSE = "MIT"
inherit core-image
============================================================
=======================
* how can we tell that "core-image-base" will include "support for a
variety of hardware such as WIFI, bluetooth...", as compare to
"core-image-minimal"?
* Do I miss any other document that I need to read?
"diff" is your friend. You'll see that core-image-minimal explicitly sets
IMAGE_INSTALL, which is otherwise set by core-image to respect
IMAGE_FEATURES and other variables.

Ross
Andre McCurdy
2017-10-10 22:07:43 UTC
Permalink
Post by Jerry Lian
I have a basic question: how to tell the difference between
"core-image-minimal" and "core-image-base"?
* If we look at file \poky\meta\recipes-core\images\core-image-base.bb
===================================================================================
SUMMARY = "A console-only image that fully supports the target device
hardware."
IMAGE_FEATURES += "splash"
LICENSE = "MIT"
inherit core-image
===================================================================================
* how can we tell that "core-image-base" will include "support for a variety
of hardware such as WIFI, bluetooth...", as compare to "core-image-minimal"?
* Do I miss any other document that I need to read?
core-image-base takes the default value of IMAGE_INSTALL from
meta/classes/core-image.bbclass, but core-image-minimal over-rides the
default value and effectively removes packagegroup-base-extended.

See meta/recipes-core/packagegroups/packagegroup-base.bb for more
details of what gets pulled in by packagegroup-base-extended.
Post by Jerry Lian
Thanks!
Jerry
--
_______________________________________________
yocto mailing list
https://lists.yoctoproject.org/listinfo/yocto
--
Jerry Lian
2017-10-11 16:30:28 UTC
Permalink
Thanks for answers from Ross and Andre.
Now further question:
* If we look at file \poky\meta\recipes-core\images\core-image-minimal.bb
<http://core-image-base.bb>
========================================================
SUMMARY = "A small image just capable of allowing a device to boot."

IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL}"

IMAGE_LINGUAS = " "

LICENSE = "MIT"

inherit core-image
========================================================
* "inherit core-image" *comes after* "IMAGE_INSTALL = ..."
* Will the "IMAGE_INSTALL" in this file be overridden by "IMAGE_INSTALL" in
"core-image"

So what is the rule for "overridden"?
Post by Jerry Lian
Post by Jerry Lian
I have a basic question: how to tell the difference between
"core-image-minimal" and "core-image-base"?
* If we look at file \poky\meta\recipes-core\images\core-image-base.bb
============================================================
=======================
Post by Jerry Lian
SUMMARY = "A console-only image that fully supports the target device
hardware."
IMAGE_FEATURES += "splash"
LICENSE = "MIT"
inherit core-image
============================================================
=======================
Post by Jerry Lian
* how can we tell that "core-image-base" will include "support for a
variety
Post by Jerry Lian
of hardware such as WIFI, bluetooth...", as compare to
"core-image-minimal"?
Post by Jerry Lian
* Do I miss any other document that I need to read?
core-image-base takes the default value of IMAGE_INSTALL from
meta/classes/core-image.bbclass, but core-image-minimal over-rides the
default value and effectively removes packagegroup-base-extended.
See meta/recipes-core/packagegroups/packagegroup-base.bb for more
details of what gets pulled in by packagegroup-base-extended.
Post by Jerry Lian
Thanks!
Jerry
--
_______________________________________________
yocto mailing list
https://lists.yoctoproject.org/listinfo/yocto
Andre McCurdy
2017-10-11 17:57:33 UTC
Permalink
Post by Jerry Lian
Thanks for answers from Ross and Andre.
* If we look at file \poky\meta\recipes-core\images\core-image-minimal.bb
========================================================
SUMMARY = "A small image just capable of allowing a device to boot."
IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL}"
IMAGE_LINGUAS = " "
LICENSE = "MIT"
inherit core-image
========================================================
* "inherit core-image" comes after "IMAGE_INSTALL = ..."
* Will the "IMAGE_INSTALL" in this file be overridden by "IMAGE_INSTALL" in
"core-image"
So what is the rule for "overridden"?
http://www.yoctoproject.org/docs/2.3/bitbake-user-manual/bitbake-user-manual.html#basic-syntax
--
Andre McCurdy
2017-10-11 22:08:49 UTC
Permalink
On Wed, Oct 11, 2017 at 11:24 AM, Robert Berger
Hi,
3) Different package versions depending on the image recipe?
Well actually I would like to have root file systems with different recipe
versions inside
e.g.
Customer 1: prg1_1.1.bb, prg2_2.2.bb
Customer 2: prg1_1.2.bb, prg2_2.1.bb
4) Different package variants (e.g. extra compile flags) depending on the
image recipe? Again different content of rootfs.
e.g.
Customer 3: prg1_1.1.bb (default), prg2_2.2.bb with extra CFLAGS=-DUMMY)
Customer 4: prg1_1.2.bb (default), prg2_2.1.bb(default)
===
Is this possible at all?
I could define per distro image versions, but the name of the distro e.g.
"poky" seems to be part of the compiler prefix, which is not nice and I
would need to build the same toolchain multiple times, which again is not
nice.
If the choice is based on e.g. the distro variable I could use it to
distinguish in the recipes between different build variations, but again not
nice.
What would you suggest?
Create additional variants of the machine config to cover each case,
e.g. myboard.conf, myboard-debug.conf, myboard-dummy.conf, etc

The -debug, -dummy, etc variants can include the original base version
of the machine config file, so there doesn't need to be any
duplication.
--
Andre McCurdy
2017-10-16 17:54:44 UTC
Permalink
On Mon, Oct 16, 2017 at 2:10 AM, Robert Berger
Anyhow, following this idea I was told that there is also something like
this[1].
bitbake \
multiconfig:customerA:stable-image \
multiconfig:customerA:bleeding-image \
multiconfig:customerB:stable-image \
multiconfig:customerB:bleeding-image
where it would be the same MACHINE, but different images and package
versions, which could be defined in the configs.
[1]
http://www.yoctoproject.org/docs/latest/mega-manual/mega-manual.html#platdev-building-targets-with-multiple-configurations
Good luck!
Regards,
Robert
--

Loading...