Download the Toolchain for Rugged Board i.MX6UL

Objective:

This guide describes a method of downloading the toolchain for Rugged Board-i.MX6UL and cross compile the sample application.

Materials:

Hardware:

Software:

  • Ubuntu 20.04 64Bit

Procedure:

HOST Machine setup:

UBUNTU 20.04 is prefered. Install the below pre-requisite packages :

$ sudo apt-get update

$ sudo apt-get -y install gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat

$ sudo apt-get -y install cpio python3 python3-pip python3-pexpect xz-utils debianutils

$ sudo apt-get -y install iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev

$ sudo apt-get -y install pylint3 xterm python3-subunit mesa-common-dev zstd liblz4-tool

Toolchain Downloading:

Step-1: Make directory to download the toolchain.

$ mkdir toolchain

$ cd toolchain

Step-2: Download the toolchain

$ wget https://download.phytec.de/Software/Linux/BSP-Yocto-i.MX6UL/BSP-Yocto-Ampliphy-i.MX6UL-PD21.2.1/sdk/ampliphy/phytec-ampliphy-glibc-x86_64-phytec-qt5demo-image-cortexa7t2hf-neon-vfpv4-toolchain-BSP-Yocto-Ampliphy-i.MX6UL-PD21.2.1.sh

Step-3: Give the permissions to the toolchain script file as below and install it.

$ chmod 777 phytec-ampliphy-glibc-x86_64-phytec-qt5demo-image-cortexa7t2hf-neon- vfpv4-toolchain-BSP-Yocto-Ampliphy-i.MX6UL-PD21.2.1.sh

$ sh phytec-ampliphy-glibc-x86_64-phytec-qt5demo-image-cortexa7t2hf-neon-vfpv4- toolchain-BSP-Yocto-Ampliphy-i.MX6UL-PD21.2.1.sh

Step-4: To cross compile any sample application(hello_world.c) or compile any source, please run the below command to get the arm environment.

$ . /opt/ampliphy/BSP-Yocto-Ampliphy-i.MX6UL-PD21.2.1/environment-setup- cortexa7t2hf-neon-vfpv4-phytec-linux-gnueabi

Step-5: Cross compiling the c application as below

$ $CC hello_world.c -o hello_world

$ file hello_world

hello_world:  ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3,BuildID[sha1]=02761505be3114ebfd3c0ec7818290dd5c55f5ee, \
for GNU/Linux 3.2.0, with debug_info, not stripped

Last updated