Yocto Toolchain installation: Difference between revisions
No edit summary |
No edit summary |
||
Line 4: | Line 4: | ||
--> {{PageHeader|Yocto toolchain installation for out of Yocto builds}} {{DocImage|category1=Yocto|category2={{#var:HARDWARE_NAME}}}} __toc__ | --> {{PageHeader|Yocto toolchain installation for out of Yocto builds}} {{DocImage|category1=Yocto|category2={{#var:HARDWARE_NAME}}}} __toc__ | ||
== | == Prerequirements == | ||
A full Yocto build environment is required for the toolchain generation.<br> | |||
To setup Yocto build environment follow steps 1 & 3 of the {{Varlink|Yocto_Build_Release|{{#var:RELEASE_LINK}}|Build Yocto from source code}} guide and then proceed to the toolchain | To setup a Yocto build environment follow steps 1 & 3 of the {{Varlink|Yocto_Build_Release|{{#var:RELEASE_LINK}}|Build Yocto from source code}} guide and then proceed to either the toolchain or SDK steps below: | ||
== Build a toolchain == | |||
$ cd {{#var:BUILD_FOLDER}} | $ cd {{#var:BUILD_FOLDER}} | ||
$ MACHINE={{#var:MACHINE_NAME}} DISTRO={{#var:BUILD_DISTRO}} {{#var:BUILD_SCRIPT}} {{#ifeq: {{#var:HARDWARE_NAME}}|DART-MX8M|-b {{#var:BUILD_FOLDER_XWAYLAND}}|{{#var:BUILD_FOLDER_X11}}}} | $ MACHINE={{#var:MACHINE_NAME}} DISTRO={{#var:BUILD_DISTRO}} {{#var:BUILD_SCRIPT}} {{#ifeq: {{#var:HARDWARE_NAME}}|DART-MX8M|-b {{#var:BUILD_FOLDER_XWAYLAND}}|{{#var:BUILD_FOLDER_X11}}}} | ||
Line 16: | Line 15: | ||
$ bitbake meta-toolchain | $ bitbake meta-toolchain | ||
== Build | == Build a complete SDK == | ||
To compile applications that require libraries other than glibc you should build SDK | To compile applications that require libraries other than glibc you should build an SDK which contains development versions of all libraries in the rootfs image, and not just the basic toolchain. | ||
$ cd {{#var:BUILD_FOLDER}} | $ cd {{#var:BUILD_FOLDER}} | ||
$ MACHINE={{#var:MACHINE_NAME}} DISTRO={{#var:BUILD_DISTRO}} {{#var:BUILD_SCRIPT}} {{#ifeq: {{#var:HARDWARE_NAME}}|DART-MX8M|-b {{#var:BUILD_FOLDER_XWAYLAND}}|{{#var:BUILD_FOLDER_X11}}}} | $ MACHINE={{#var:MACHINE_NAME}} DISTRO={{#var:BUILD_DISTRO}} {{#var:BUILD_SCRIPT}} {{#ifeq: {{#var:HARDWARE_NAME}}|DART-MX8M|-b {{#var:BUILD_FOLDER_XWAYLAND}}|{{#var:BUILD_FOLDER_X11}}}} | ||
E.g. when using the fsl-image-gui image: | |||
$ bitbake -c populate_sdk fsl-image-gui | $ bitbake -c populate_sdk fsl-image-gui | ||
{{Note|The SDK should match the rootfs image on the target, otherwise you may experience difficulties when trying to debug application failures.}} | |||
== Install the toolchain/SDK == | |||
Install the tools by running the resulted script in tmp/deploy/sdk/. | |||
== Install | |||
Install the tools by running | |||
E.g. | |||
$ tmp/deploy/sdk/{{#ifeq: {{#var:HARDWARE_NAME}}|DART-MX8M|{{#var:TOOLCHAIN_INSTALL_XWAYLAND_NAME}}|{{#var:TOOLCHAIN_INSTALL_X11_NAME}}}} | $ tmp/deploy/sdk/{{#ifeq: {{#var:HARDWARE_NAME}}|DART-MX8M|{{#var:TOOLCHAIN_INSTALL_XWAYLAND_NAME}}|{{#var:TOOLCHAIN_INSTALL_X11_NAME}}}} | ||
Note: The toolchain/script name depends on your build machine, and the bitbaked image/recipe, and may change.<br> | |||
<br> | |||
Accept all the default options, and at the end of the installation you should see the following: | |||
<pre> | <pre> | ||
SDK has been successfully set up and is ready to be used. | SDK has been successfully set up and is ready to be used. | ||
</pre> | </pre> | ||
== Use | == Use the toolchain/SDK == | ||
Each time you wish to use the toolchain in a new shell session, you need to source the environment setup script: | Each time you wish to use the toolchain in a new shell session, you need to source the environment setup script: | ||
$ source {{#var:TOOLCHAIN_LOCATION}} | $ source {{#var:TOOLCHAIN_LOCATION}}{{#ifeq: {{#var:HARDWARE_NAME}}|DART-MX8M|<br> $ export LDFLAGS=|}} | ||
Revision as of 13:17, 1 January 2019
Prerequirements
A full Yocto build environment is required for the toolchain generation.
To setup a Yocto build environment follow steps 1 & 3 of the Build Yocto from source code guide and then proceed to either the toolchain or SDK steps below:
Build a toolchain
$ cd ~/var-fslc-yocto $ MACHINE=imx6ul-var-dart DISTRO=fslc-x11 . setup-environment build_x11
$ bitbake meta-ide-support $ bitbake meta-toolchain
Build a complete SDK
To compile applications that require libraries other than glibc you should build an SDK which contains development versions of all libraries in the rootfs image, and not just the basic toolchain.
$ cd ~/var-fslc-yocto $ MACHINE=imx6ul-var-dart DISTRO=fslc-x11 . setup-environment build_x11
E.g. when using the fsl-image-gui image:
$ bitbake -c populate_sdk fsl-image-gui
Install the toolchain/SDK
Install the tools by running the resulted script in tmp/deploy/sdk/.
E.g.
$ tmp/deploy/sdk/fslc-x11-glibc-x86_64-meta-toolchain-armv7at2hf-neon-toolchain-2.2.1.sh
Note: The toolchain/script name depends on your build machine, and the bitbaked image/recipe, and may change.
Accept all the default options, and at the end of the installation you should see the following:
SDK has been successfully set up and is ready to be used.
Use the toolchain/SDK
Each time you wish to use the toolchain in a new shell session, you need to source the environment setup script:
$ source /opt/fslc-x11/2.2.1/environment-setup-armv7at2hf-neon-fslc-linux-gnueabi