Difference between revisions of "DESK-MX8M-L/General/Managed Virtual Machine (MVM)"

From DAVE Developer's Wiki
Jump to: navigation, search
(Installing the meta-toolchain SDK)
(12 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
!colspan="4" style="width:100%; text-align:left"; border-bottom:solid 2px #ededed"|History
 
!colspan="4" style="width:100%; text-align:left"; border-bottom:solid 2px #ededed"|History
 
|-  
 
|-  
 +
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Version
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Issue Date
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Issue Date
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Notes
 
!style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#73B2C7; padding:5px; color:white"|Notes
 
|-
 
|-
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|{{oldid|16134|2022/02/17}}
+
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|1.0.0
 +
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|Feb 2022
 
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|First DESK-MX8M-L release
 
|style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000"|First DESK-MX8M-L release
|-
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |{{oldid|17536|2023/02/24}}
 
| style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#edf8fb; padding:5px; color:#000000" |DESK-MX8M-L-2.0.0 release
 
|-
 
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |2023/08/22
 
! style="border-left:solid 2px #73B2C7; border-right:solid 2px #73B2C7;border-top:solid 2px #73B2C7; border-bottom:solid 2px #73B2C7; background-color:#ededed; padding:5px; color:#000000" |DESK-MX8M-L-4.0.0 release
 
 
|-
 
|-
 
|}
 
|}
Line 27: Line 23:
  
 
* VirtualBox virtual machine (.OVA archive)
 
* VirtualBox virtual machine (.OVA archive)
* based on Lubuntu 20.04 LTS (64-bit version)
+
* based on Lubuntu 16.04 LTS (64-bit version)
 
* pre-installed VirtualBox Guest Additions
 
* pre-installed VirtualBox Guest Additions
 
* LXDE desktop environment
 
* LXDE desktop environment
 
* boot disk with the distro and pre-configured basic Linux services:
 
* boot disk with the distro and pre-configured basic Linux services:
** TFTP: with base directory <code>/tftpboot/desk-mx8m-l/</code>
+
** TFTP: with base directory <code>/srv/tftp/</code>
 
** NFS: configured through the <code>/etc/exports</code> file
 
** NFS: configured through the <code>/etc/exports</code> file
 
* secondary disk containing source code and tools:
 
* secondary disk containing source code and tools:
** bootloader (U-Boot) source tree cloned from DAVE Embedded Systems public git repository  
+
** bootloader (u-boot) source tree cloned from DAVE Embedded Systems public git repository  
 
** Linux kernel source tree cloned from DAVE Embedded Systems public git repository
 
** Linux kernel source tree cloned from DAVE Embedded Systems public git repository
 
** external pre-built toolchain
 
** external pre-built toolchain
Line 43: Line 39:
 
** password: '''dvdk'''
 
** password: '''dvdk'''
  
Please note that U-Boot and kernel source trees are derived from the official trees released by NXP/Freescale; these trees have been customized to add support for the [[ORCA SOM | ORCA]] and [[MITO 8M Mini SOM | MITO 8M Mini]] SOMs.
+
Please note that u-boot and kernel source trees are derived from the official trees released by NXP/Freescale; these trees have been customized to add support for the [[ORCA SOM | ORCA]] and [[MITO 8M Mini SOM | MITO 8M Mini]] SOMs.
  
 
===Host setup===
 
===Host setup===
Line 56: Line 52:
 
To install it, please refer to [[VirtualBox_Starting_DVDK_Virtual_Machine#Using_a_.ova_file|this page]].
 
To install it, please refer to [[VirtualBox_Starting_DVDK_Virtual_Machine#Using_a_.ova_file|this page]].
  
=== Installing the ''meta-toolchain'' SDK ===
+
=== DVDK for release 2.0.0-rc2 ===
 +
The Virtual Machine used for the [[ORCA SOM | ORCA]] and [[MITO 8M Mini SOM | MITO 8M Mini]] SOMs is the same used for the [[DESK-MX6-L | DESK-MX6-L]] development environment. Here below you can find the simple instructions for installing the ''rc2'' release for [[DESK-MX8M-L | DESK-MX8M-L]] BSP using [[DESK-MX6-L | DESK-MX6-L]] Virtual Machine.
  
''meta toolchain'' is preinstalled on [[DESK-MX8M-L/General/Release_Notes#DESK-MX8M-L_4.0.0 | DESK-MX8M-L-4.0.0]] and it is used for building U-Boot and kernel sources. It can be found in the following path.
+
==== Additional library ====
 +
* <code>libssl-devel</code> is required for building the linux kernel: it is enough to install the library in the VM
 +
dvdk@vagrant:~/desk-mx-l$ sudo apt-get install libssl-dev
  
 +
==== Installing the ''meta-toolchain''  SDK ====
 +
* open a Desktop Linux Terminal
 +
* download the proper SDK from the mirror server <code>fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh</code>
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
dvdk@vagrant:~/desk-mx-l$ ls -la /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0/
+
dvdk@vagrant:~/desk-mx-l/sdk$ wget http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
total 40
+
--2022-02-14 16:09:59--  http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
drwxr-xr-x 3 root root  4096 Jul 24 14:12 .
+
Resolving mirror.dave.eu (mirror.dave.eu)... 79.143.179.155
drwxr-xr-x 3 root root  4096 Jul 24 14:11 ..
+
Connecting to mirror.dave.eu (mirror.dave.eu)|79.143.179.155|:80... connected.
-rw-r--r-- 1 root root 4253 Jul 24 14:11 environment-setup-armv8a-poky-linux
+
HTTP request sent, awaiting response... 200 OK
-rw-r--r-- 1 root root 14027 Jul 24 14:11 site-config-armv8a-poky-linux
+
Length: 445468102 (425M) [text/x-sh]
drwxr-xr-x 4 root root  4096 Jul 24 14:11 sysroots
+
Saving to: ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’
-rw-r--r-- 1 root root  141 Jul 24 14:11 version-armv8a-poky-linux
+
 
dvdk@vagrant:~/desk-mx-l$
+
fsl-imx-wayland-glibc-x86_64-meta-toolchain-aar 100%[=======================================================================================================>] 424.83M  639KB/s    in 8m 54s 
</pre>
 
  
The installation script can be found in <code>/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_meta-toolchain.sh</code>. In case reinstallation would be need, execute following commands.
+
2022-02-14 16:18:54 (815 KB/s) - ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’ saved [445468102/445468102]
  
 +
dvdk@vagrant:~/desk-mx-l/sdk$
 +
</pre>
 +
* the ''sdk'' recommended installation directory is <code>desk-mx-l/sdk</code>
 +
* directory listing before installing the new SDK
 +
<pre class="workstation-terminal">
 +
dvdk@vagrant:~/desk-mx-l/sdk$ pwd
 +
/home/dvdk/desk-mx-l/sdk
 +
dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
 +
total 16
 +
drwxr-xr-x 4 dvdk dvdk 4096 Apr  9  2021 .
 +
drwxr-xr-x 6 dvdk dvdk 4096 Apr  9  2021 ..
 +
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0
 +
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
 +
lrwxrwxrwx 1 root root  41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
 +
lrwxrwxrwx 1 root root  51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
 +
dvdk@vagrant:~/desk-mx-l/sdk$
 +
</pre>
 +
* SDK installation
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
dvdk@vagrant:~$ cd desk-mx-l/
+
dvdk@vagrant:~/desk-mx-l/sdk$ chmod 755 fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
dvdk@vagrant:~/desk-mx-l$ ./desk-mx8m-l-4.0.0_meta-toolchain.sh -d /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0 -y
+
dvdk@vagrant:~/desk-mx-l/sdk$ ./fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
NXP i.MX Release Distro SDK installer version 5.15-kirkstone
+
NXP i.MX Release Distro SDK installer version 5.4-zeus
============================================================
+
======================================================
You are about to install the SDK to "/opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0". Proceed [Y/n]? Y
+
Enter target directory for SDK (default: /opt/fsl-imx-wayland/5.4-zeus): /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain
Extracting SDK..........................................done
+
You are about to install the SDK to "/home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain". Proceed [Y/n]? Y
Setting it up...done
+
Extracting SDK.................................................................................................................done
 
SDK has been successfully set up and is ready to be used.
 
SDK has been successfully set up and is ready to be used.
 
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
  $ . /opt/yocto/sdk/desk-mx8m-l/desk-mx8m-l-4.0.0-rc2/environment-setup-armv8a-poky-linux
+
  $ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain/environment-setup-aarch64-poky-linux
dvdk@vagrant:~/desk-mx-l$
+
dvdk@vagrant:~/desk-mx-l/sdk$  
 
</pre>
 
</pre>
 
+
* create a symbolic link to the SDK directory ''latest'' version
=== Installing the ''application'' SDK ===
+
ln -s /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain latest_desk-mx8-l-toolchain
 
+
* create the environment script for enabling the toolchain (during the development phase) and make it executable
''application'' SDK is preinstalled on [[DESK-MX8M-L/General/Release_Notes#DESK-MX8M-L_4.0.0 | DESK-MX8M-L-4.0.0]] and it is used for building userspace application. The SDK contains the headers and libraries for building the Qt6 application. It can be found in the following path.
 
 
 
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
dvdk@vagrant:~$ ls -la ~/desk-mx-l/sdk/desk-mx8m-l-4.0.0/
+
dvdk@vagrant:~/desk-mx-l$ {
total 40
+
>  echo \# DESK-MX8M-L development environment for u-boot/kernel development
drwxr-xr-x 3 dvdk dvdk  4096 Jul 24 14:27 .
+
>  echo
drwxr-xr-x 3 dvdk dvdk  4096 Jul 24 14:19 ..
+
>  echo source /home/dvdk/desk-mx-l/sdk/latest_desk-mx8-l-toolchain/environment-setup-aarch64-poky-linux
-rw-r--r-- 1 dvdk dvdk  4231 Jul 24 14:26 environment-setup-armv8a-poky-linux
+
> } | tee > /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0_env.sh
-rw-r--r-- 1 dvdk dvdk 14027 Jul 24 14:26 site-config-armv8a-poky-linux
+
dvdk@vagrant:~/desk-mx-l$ chmod 755 desk-mx8m-l-2.0.0_env.sh
drwxr-xr-x 4 dvdk dvdk  4096 Jul 24 14:19 sysroots
+
dvdk@vagrant:~/desk-mx-l$  
-rw-r--r-- 1 dvdk dvdk  141 Jul 24 14:26 version-armv8a-poky-linux
 
dvdk@vagrant:~$
 
 
</pre>
 
</pre>
 +
* once installed, if required for freeing some space, the SDK file can be removed:
  
The installation script can be found in <code>/home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_sdk.sh</code>. In case reinstallation would be need, execute following commands.
+
rm fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
  
 +
==== Installing the ''application'' SDK ====
 +
The previously installed SDK is used for building u-boot and kernel sources. For building userspace application another SDK has to be used: the <code>fsl-imx-wayland-glibc-x86_64-desk-image-qt5-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh</code> script has been created by DAVE's Yocto building when the <code>desk-image-qt5-desk-mx8mp.tar.bz2</code> root file system has been created: it contains the SDK headers and libraries for building the Qt5 application too.
 +
 +
The same previously described operations can be followed for installing this SDK in the same directory. At the end, both SDK are installed and present into the rfs:
 
<pre class="workstation-terminal">
 
<pre class="workstation-terminal">
dvdk@vagrant:~$ cd desk-mx-l/
+
dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
dvdk@vagrant:~/desk-mx-l$ ./desk-mx8m-l-4.0.0_sdk.sh -d /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0 -y
+
total 435052
NXP i.MX Release Distro SDK installer version 5.15-kirkstone
+
drwxr-xr-x 5 dvdk dvdk      4096 Feb 14 16:38 ./
============================================================
+
drwxr-xr-x 6 dvdk dvdk     4096 Feb 14 16:36 ../
You are about to install the SDK to "/home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0". Proceed [Y/n]? Y
+
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0
Extracting SDK............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................done
+
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
Setting it up...done
+
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0-rc2
SDK has been successfully set up and is ready to be used.
+
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0-rc2-toolchain
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
+
lrwxrwxrwx 1 root root        41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
$ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-4.0.0/environment-setup-armv8a-poky-linux
+
lrwxrwxrwx 1 root root        51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
dvdk@vagrant:~/desk-mx-l$
+
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-rc2
 +
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-rc2-toolchain
 +
dvdk@vagrant:~/desk-mx-l/sdk$  
 
</pre>
 
</pre>
  
=== Using the SDK ===
+
==== Using the SDK ====
 
Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:
 
Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:
  
   source /home/dvdk/desk-mx-l/desk-mx8m-l-4.0.0_env.sh
+
   source /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0-rc2_env.sh
  
=== MITO 8M Mini SDK ===
+
==== MITO 8M Mini SDK ====
 
[[MITO 8M Mini SOM| MITO 8M Mini]] has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.
 
[[MITO 8M Mini SOM| MITO 8M Mini]] has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.
 +
  
 
----
 
----
  
 
[[Category:ORCA]] [[Category:MITO 8M Mini]]
 
[[Category:ORCA]] [[Category:MITO 8M Mini]]

Revision as of 11:13, 14 February 2023

History
Version Issue Date Notes
1.0.0 Feb 2022 First DESK-MX8M-L release



Virtual Machine[edit | edit source]

DAVE' standard DVDK Virtual Machine contains all the required software and documentation to start developing Linux applications on the ORCA and MITO 8M Mini platforms. In particular, DESK-MX8M-L provides a virtual machine, called DVDK, with the following features:

  • VirtualBox virtual machine (.OVA archive)
  • based on Lubuntu 16.04 LTS (64-bit version)
  • pre-installed VirtualBox Guest Additions
  • LXDE desktop environment
  • boot disk with the distro and pre-configured basic Linux services:
    • TFTP: with base directory /srv/tftp/
    • NFS: configured through the /etc/exports file
  • secondary disk containing source code and tools:
    • bootloader (u-boot) source tree cloned from DAVE Embedded Systems public git repository
    • Linux kernel source tree cloned from DAVE Embedded Systems public git repository
    • external pre-built toolchain
    • Yocto BSP for ORCA SOM and MITO 8M Mini SOM
  • pre-installed Yocto-based root file systems with setup scripts, makefiles, example applications, ...
  • administrator account (dvdk) with autologin. Please note that the user account credentials are provided with the development kit (you can find them in the README file contained in the sw/dvdk folder of the kit distribution)
    • user: dvdk
    • password: dvdk

Please note that u-boot and kernel source trees are derived from the official trees released by NXP/Freescale; these trees have been customized to add support for the ORCA and MITO 8M Mini SOMs.

Host setup[edit | edit source]

As stated previously, ORCA SOM host tools are based on a Managed Virtual Machine. As indicated here, microSD card delivered along with ORCA Evaluation Kit includes basic version of MVM that is the default option.

Please follows the README file on the SD card to extract the *.ova archive and to install the MVM.

It is also worth remembering that access to git repositories is required to download target source code. To enable it, please refer to this page.

MVM can be downloaded here. For accessing DESK Reserved area please contact our helpdesk support channel

To install it, please refer to this page.

DVDK for release 2.0.0-rc2[edit | edit source]

The Virtual Machine used for the ORCA and MITO 8M Mini SOMs is the same used for the DESK-MX6-L development environment. Here below you can find the simple instructions for installing the rc2 release for DESK-MX8M-L BSP using DESK-MX6-L Virtual Machine.

Additional library[edit | edit source]

  • libssl-devel is required for building the linux kernel: it is enough to install the library in the VM
dvdk@vagrant:~/desk-mx-l$ sudo apt-get install libssl-dev

Installing the meta-toolchain SDK[edit | edit source]

  • open a Desktop Linux Terminal
  • download the proper SDK from the mirror server fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
dvdk@vagrant:~/desk-mx-l/sdk$ wget http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
--2022-02-14 16:09:59--  http://mirror.dave.eu/desk-mx-l/desk-mx8m-l-2.0.0/fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
Resolving mirror.dave.eu (mirror.dave.eu)... 79.143.179.155
Connecting to mirror.dave.eu (mirror.dave.eu)|79.143.179.155|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 445468102 (425M) [text/x-sh]
Saving to: ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’

fsl-imx-wayland-glibc-x86_64-meta-toolchain-aar 100%[=======================================================================================================>] 424.83M   639KB/s    in 8m 54s  

2022-02-14 16:18:54 (815 KB/s) - ‘fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh’ saved [445468102/445468102]

dvdk@vagrant:~/desk-mx-l/sdk$ 
  • the sdk recommended installation directory is desk-mx-l/sdk
  • directory listing before installing the new SDK
dvdk@vagrant:~/desk-mx-l/sdk$ pwd
/home/dvdk/desk-mx-l/sdk
dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
total 16
drwxr-xr-x 4 dvdk dvdk 4096 Apr  9  2021 .
drwxr-xr-x 6 dvdk dvdk 4096 Apr  9  2021 ..
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0
drwxr-xr-x 3 root root 4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
lrwxrwxrwx 1 root root   41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
lrwxrwxrwx 1 root root   51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
dvdk@vagrant:~/desk-mx-l/sdk$ 
  • SDK installation
dvdk@vagrant:~/desk-mx-l/sdk$ chmod 755 fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
dvdk@vagrant:~/desk-mx-l/sdk$ ./fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh
NXP i.MX Release Distro SDK installer version 5.4-zeus
======================================================
Enter target directory for SDK (default: /opt/fsl-imx-wayland/5.4-zeus): /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain
You are about to install the SDK to "/home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain". Proceed [Y/n]? Y
Extracting SDK.................................................................................................................done
SDK has been successfully set up and is ready to be used.
Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g.
 $ . /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain/environment-setup-aarch64-poky-linux
dvdk@vagrant:~/desk-mx-l/sdk$ 
  • create a symbolic link to the SDK directory latest version
ln -s /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-toolchain latest_desk-mx8-l-toolchain
  • create the environment script for enabling the toolchain (during the development phase) and make it executable
dvdk@vagrant:~/desk-mx-l$ {
>   echo \# DESK-MX8M-L development environment for u-boot/kernel development
>   echo 
>   echo source /home/dvdk/desk-mx-l/sdk/latest_desk-mx8-l-toolchain/environment-setup-aarch64-poky-linux
> } | tee > /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0_env.sh
dvdk@vagrant:~/desk-mx-l$ chmod 755 desk-mx8m-l-2.0.0_env.sh
dvdk@vagrant:~/desk-mx-l$ 
  • once installed, if required for freeing some space, the SDK file can be removed:
rm fsl-imx-wayland-glibc-x86_64-meta-toolchain-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh

Installing the application SDK[edit | edit source]

The previously installed SDK is used for building u-boot and kernel sources. For building userspace application another SDK has to be used: the fsl-imx-wayland-glibc-x86_64-desk-image-qt5-aarch64-desk-mx8mp-toolchain-5.4-zeus.sh script has been created by DAVE's Yocto building when the desk-image-qt5-desk-mx8mp.tar.bz2 root file system has been created: it contains the SDK headers and libraries for building the Qt5 application too.

The same previously described operations can be followed for installing this SDK in the same directory. At the end, both SDK are installed and present into the rfs:

dvdk@vagrant:~/desk-mx-l/sdk$ ls -la
total 435052
drwxr-xr-x 5 dvdk dvdk      4096 Feb 14 16:38 ./
drwxr-xr-x 6 dvdk dvdk      4096 Feb 14 16:36 ../
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0
drwxr-xr-x 3 root root      4096 Apr  9  2021 desk-mx6-l-1.0.0-toolchain
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0-rc2
drwxr-xr-x 3 dvdk dvdk      4096 Feb 14 16:30 desk-mx8m-l-2.0.0-rc2-toolchain
lrwxrwxrwx 1 root root        41 Apr  9  2021 latest_desk-mx6-l -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0
lrwxrwxrwx 1 root root        51 Apr  9  2021 latest_desk-mx6-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx6-l-1.0.0-toolchain
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-rc2
lrwxrwxrwx 1 dvdk dvdk        57 Feb 14 16:38 latest_desk-mx8-l-toolchain -> /home/dvdk/desk-mx-l/sdk/desk-mx8m-l-2.0.0-rc2-toolchain
dvdk@vagrant:~/desk-mx-l/sdk$ 

Using the SDK[edit | edit source]

Anytime it is required to compile u-boot or kernel sources, it is enough to enabling it using the script:

 source /home/dvdk/desk-mx-l/desk-mx8m-l-2.0.0-rc2_env.sh

MITO 8M Mini SDK[edit | edit source]

MITO 8M Mini has the same 4-cores Cortex-A53 architecture: even if Yocto builds two SDK, it is possible to install and use the previously described/used SDK file for both SOM modules/architectures.