This is the Li-Pro.Net Central Yocto BSP Manifest.
To get the BSP you need to have repo
installed and use it as:
Install the repo
utility:
$: mkdir -p ~/.local/bin
$: curl https://raw.githubusercontent.com/lipro-yocto/git-repo/lpn-launcher/repo > ~/.local/bin/repo
$: chmod a+x ~/.local/bin/repo
For repo launcher version 2.8.2020.10.4, the SHA-1 checksum
for repo
is 1c5afd4164e7b9dd7939334291ededc54ef280f2
Warning
|
Derived Work
This BSP is a special fork of the official Freescale Community Yocto BSP.Use the issue tracker on GitHub. Do not ask on any mailing list. |
Download the BSP source:
$: PATH=${PATH}:~/.local/bin
$: mkdir lpn-central-bsp
$: cd lpn-central-bsp
$: repo init -u https://github.com/lipro-yocto/lpn-central-bsp-platform \
-b master -m fsl-community.xml
$: repo sync
At the end of the commands you have every metadata you need to start work with.
Download the BSP source:
$: PATH=${PATH}:~/.local/bin
$: mkdir lpn-central-bsp
$: cd lpn-central-bsp
$: repo init -u https://github.com/lipro-yocto/lpn-central-bsp-platform \
-b master -m default.xml
$: repo sync
At the end of the commands you have every metadata you need to start work with.
To start a simple image build:
$: source ./setup-environment build
$: bitbake core-image-minimal
You can use any directory to host your build.
The source code is checked out at lpn-central-bsp/sources
.
To see available images, run inside the checked out source path
lpn-central-bsp/sources
:
$: find . -name core-image*.bb
./poky/meta-skeleton/recipes-multilib/images/core-image-multilib-example.bb
./poky/meta/recipes-graphics/images/core-image-clutter.bb
./poky/meta/recipes-graphics/images/core-image-directfb.bb
./poky/meta/recipes-graphics/images/core-image-x11.bb
./poky/meta/recipes-graphics/images/core-image-weston.bb
./poky/meta/recipes-extended/images/core-image-testmaster-initramfs.bb
./poky/meta/recipes-extended/images/core-image-lsb.bb
./poky/meta/recipes-extended/images/core-image-full-cmdline.bb
./poky/meta/recipes-extended/images/core-image-lsb-dev.bb
./poky/meta/recipes-extended/images/core-image-kernel-dev.bb
./poky/meta/recipes-extended/images/core-image-testmaster.bb
./poky/meta/recipes-extended/images/core-image-lsb-sdk.bb
./poky/meta/recipes-core/images/core-image-minimal-dev.bb
./poky/meta/recipes-core/images/core-image-minimal-mtdutils.bb
./poky/meta/recipes-core/images/core-image-base.bb
./poky/meta/recipes-core/images/core-image-minimal-initramfs.bb
./poky/meta/recipes-core/images/core-image-minimal.bb
./poky/meta/recipes-rt/images/core-image-rt.bb
./poky/meta/recipes-rt/images/core-image-rt-sdk.bb
./poky/meta/recipes-sato/images/core-image-sato-sdk.bb
./poky/meta/recipes-sato/images/core-image-sato.bb
./poky/meta/recipes-sato/images/core-image-sato-dev.bb
./meta-openembedded/meta-xfce/recipes-core/images/core-image-minimal-xfce.bb
Those are all available images. And note that, available core images from poky and meta-openembedded only. As you may imagine, several other layers can be included, and any new layer can provide new images.
Yocto Project provides some "pre baked" images. In my point of view, those images are not to be used on your product. They are examples and quick starting points.
An handy example: When you desire a pie, you can go to supermarket and buy a frozen chocolate pie. But when you’re developing a pie to be the Apple Salted Caramel with Dark Chocolate Cinnamon Topping you need to decide every piece of this pie. What is the base, which type of apple to use. How much salt on caramel. This is your product, your pie, not a frozen standard pie.
I know the analogy is kind of dumb. But it’s important to understand that the "pre baked" images provided by Yocto Project are not supposed to become a product image! You can (and maybe should) base your image on some of those images, but they are not good enough to your product.
I highly recommend you to have your own image file.
https://community.freescale.com/docs/DOC-95421
Image Name | Formal Description | Use it when/for |
---|---|---|
core-image-minimal |
||
A small image just capable of allowing a device to boot. |
|
|
core-image-minimal-initramfs |
||
Small image capable of booting a device. The kernel includes the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the first 'init' program more efficiently. |
||
core-image-minimal-mtdutils |
||
Small image capable of booting a device with support for the Minimal MTD Utilities, which let the user interact with the MTD subsystem in the kernel to perform operations on flash devices. |
||
core-image-base |
||
A console-only image that fully supports the target device hardware. |
|
|
core-image-full-cmdline |
||
A console-only image with more full-featured Linux system functionality installed. |
||
core-image-lsb |
||
An image containing packages that are required to conform to the Linux Standard Base (LSB) specification. |
||
core-image-rt |
||
A small image just capable of allowing a device to boot plus a real-time test suite and tools appropriate for real-time use. |
|
|
core-image-weston |
||
A very basic Wayland image with a terminal. |
|
|
core-image-x11 |
||
A very basic X11 image with a terminal |
|
|
core-image-directfb |
||
An image that uses DirectFB instead of X11. |
|
|
core-image-clutter |
||
An image with support for the Open GL-based toolkit Clutter, which enables development of rich and animated graphical user interfaces. |
||
core-image-sato |
||
Image with Sato, a mobile environment and visual style for mobile devices. The image supports X11 with a Sato theme, Pimlico applications, and contains terminal, editor, and file manager. |
||
core-image-minimal-xfce |
||
A XFCE minimal demo image. |
All those images DO NOT include -dev
packages or native build. If you want
it you MUST configure your local.conf
. Although, you can find special images
that provides the header files or the native compiler.
The images with -dev sufix include the header files (and development files) from all packages. For example: core-image-minimal-dev (A small image just capable of allowing a device to boot and is suitable for development work.)
The images with -sdk sufix include the native build tools. For example core-image-sato-sdk (Image with Sato support that includes everything within core-image-sato plus meta-toolchain, development headers and libraries to form a standalone SDK.)
Read more on Yocto Training provided by the Freescale community.
To see available toolchains, run inside the checked out source path
lpn-central-bsp/sources
:
$: find . -name meta-toolchain*.bb
./poky/meta/recipes-qt/meta/meta-toolchain-qte.bb
./poky/meta/recipes-qt/meta/meta-toolchain-qt.bb
./poky/meta/recipes-core/meta/meta-toolchain.bb
./meta-qt5/recipes-qt/meta/meta-toolchain-qt5.bb
./meta-openembedded/meta-efl/recipes-core/meta/meta-toolchain-efl.bb
Those are all available toolchains. And note that, available toolchains from poky, meta-openembedded and meta-qt5 only. As you may imagine, several other layers can be included, and any new layer can provide new toolchains.
Meta Name | Formal Description | Use it when/for |
---|---|---|
meta-toolchain |
||
Meta package for building a installable toolchain. |
|
|
meta-toolchain-qt |
||
Meta package for building a installable Qt4 toolchain and SDK. |
||
meta-toolchain-qte |
||
Meta package for building a installable Qt4/Embedded toolchain and SDK. |
||
meta-toolchain-qt5 |
||
Meta package for building a installable Qt5 toolchain and SDK. |
||
meta-toolchain-efl |
||
Meta package for building a installable Enlightenment UI toolchain and SDK. |
To build a cross toolchain for the current build machine:
$: bitbake meta-toolchain
To build a cross toolchain for a Windows 32 bit machine:
$: SDKMACHINE=i686-mingw32
$: bitbake meta-toolchain
To build a cross toolchain for a Windows 64 bit machine:
$: SDKMACHINE=x86_64-mingw32
$: bitbake meta-toolchain
To contribute to the manifest you should send a pull request to this GitHub project or send the patches for review to the authors mailing address.
When creating patches, please use something like:
$: git format-patch -s --subject-prefix='lpn-central-bsp-platform][PATCH' origin
When sending patches, please use something like:
$: git send-email --to [email protected] <generated patch>
Replace the repo init
command above with one of the following:
- master
-
For developers
$: repo init -u https://github.com/lipro-yocto/lpn-central-bsp-platform -b master
- master-next
-
For intrepid developers and testers
Patches are typically merged into master-next and then are merged into master after a testing and comment period. It’s possible that master-next has something you want or need. But it’s also possible that using master-next breaks something that was working before. Use with caution.
$: repo init -u https://github.com/lipro-yocto/lpn-central-bsp-platform -b master-next