Embedded module TQMa7x - PTXdist Linux BSP documentation
Preface
This page refers to the BSP and ancillary tools listed in the following table:
BSP Revision | 0113 |
---|---|
PTXdist | 2020.01 |
OSELAS Toolchain | 2019.09.1 |
Platform | mba7x |
U-Boot | 2016.03(NXP imx-rel_imx_4.1.15_2.0.0_ga) |
Linux Kernel | linux 5.4.87 \ linux 5.4.87 + rt48 |
BSP Version Matrix
BSP Revision | PTXdist | OSELAS Toolchain | Platform | U-Boot | Linux Kernel | Qt Version |
---|---|---|---|---|---|---|
0113 | 2020.01 | 2019.09.1 | MBa7x | 2016.03 (NXP imx-rel_imx_4.1.15_2.0.0_ga) | linux 5.4.87 linux 5.4.87 + -rt48 | 5.12.6 |
0108 | 2019.01 | 2018.12.0 | MBa7x | 2016.03 (NXP imx-rel_imx_4.1.15_2.0.0_ga) | 4.14.78 4.14.78 + -rt47 (NXP 4.14.78 rel_imx_4.14.78_1.0.0_ga) | 5.6.3 |
0105 | 2016.04 | 2014.12.2 | MBa7x | 2016.03 (NXP imx-rel_imx_4.1.15_2.0.0_ga) | 4.1.15 (NXP imx-rel_imx_4.1.15_2.0.0_ga) | 5.6.2 |
0101 | 2016.04 | 2014.12.2 | MBa7x | 2016.03 (NXP imx-rel_imx_4.1.15_2.0.0_ga) | 4.1.15 (NXP imx-rel_imx_4.1.15_2.0.0_ga) | 5.6.1 |
Prerequisites
The BSP is available as a project ready to use with the PTXdist1) build system. As PTXdist runs on linux, first of all you need a development workstation (or a virtual machine) with a (preferably) recent Linux distribution installed. The distribution of your choice, however, may not have installed all required packages by default. Commonly missing packages (package names taken from Debian based systems) include:
- autoconf
- bc
- bison
- build-essential
- dialog
- flex
- g++
- gawk
- gettext
- git
- libncurses5-dev
- libxml-parser-perl
- python-dev
- quilt
- texinfo
- zip
- socat
- pkg-config
Although not required by PTXdist, we also recommend to configure and run a tftp server (for image download / update) and an nfs server (for network mounted rootfs) on your development host.
PTXdist set-up
Once the toolchain is compiled, install PTXdist 2020.01 is required to build the BSP.
You can always use a specific version of PTXdist by explicitly calling ptxdist-<version>.
Example:
$ ptxdist-2020.01
Please note:
The link /usr/local/bin/ptxdist always calls the PTXdists version installed most recently.
Starting with PTXdist 2014.07, ptxdist calls a script which tries to automatically determine and call
the required version by parsing the config files in the project directory.
Make sure the development host meets the prerequisites and download the required PTXdist tarball(s) (see Downloads page for URLs).
Install PTXdist version for building the Toolchain
Extract the tarball ptxdist-2019.09.1.tar.bz2 and install as follows:
$ tar xvf ptxdist-2019.09.1.tar.bz2 $ cd ptxdist-2019.09.1 $ ./configure $ make $ sudo make install
This will install PTXdist to /usr/local/lib by default.
PTXdist configuration
After installing PTXdist it can be configured by:
$ ptxdist setup
.config - PTXdist 2020.01 ────────────────────────────────────────────────────────────────────────────── ┌─────────────────────────── PTXdist 2020.01 ───────────────────────────┐ │ Arrow keys navigate the menu. <Enter> selects submenus --->. │ │ Highlighted letters are hotkeys. Pressing <Y> includes, <N> excludes, │ │ <M> modularizes features. Press <Esc><Esc> to exit, <?> for Help, </> │ │ for Search. Legend: [*] built-in [ ] excluded <M> module < > │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ --- PTXDIST Setup Menu │ │ │ │ User ---> │ │ │ │ Proxies ---> │ │ │ │ Project Searchpath ---> │ │ │ │ Source Directories ---> │ │ │ │ Source Download ---> │ │ │ │ IPKG Repository ---> │ │ │ │ Java SDK ---> │ │ │ │ Developer Options ---> │ │ │ │ │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ ├─────────────────────────────────────────────────────────────────────────┤ │ <Select> < Exit > < Help > < Save > < Load > │ └─────────────────────────────────────────────────────────────────────────┘
To personalise your PTXdist installation, please fill out:
- User (username and mail address)
Depending on your environment, the most important settings are:
- Proxies (ftp / http / hhtps proxies)
- Source Directories (path for archive of downloaded source packages (aka local package pool))
For further details on setup options, please see the PTXdist manual.
Building the toolchain
See download page for links to toolchain download. If using precompiled toolchain install to /opt. Otherwise carefully follow the documentation for building toolchains found here or in the download section.
By default the toolchain will get installed to /opt/OSELAS.Toolchain-<version>.
Follow chapter “Building a toolchain” in the PTXdist manual and keep in mind:
- When you are asked to run the command
$ ptxdist select ptxconfigs/...
select this ptxconfig: ptxconfigs/arm-v7a-linux-gnueabihf_gcc-<version>_glibc-<version>_binutils-<version>_kernel-<version>-sanitized.ptxconfig (for TQMa7x)
- To build the toolchain project you should install the corresponding PTXdist version for the Toolchain (as told in the documentation).
Install PTXdist version for building the BSP
Extract the tarball ptxdist-2020.01.tar.bz2 and install as follows:
$ tar xvf ptxdist-2020.01.tar.bz2 $ cd ptxdist-2020.01 $ ./configure $ make $ sudo make install
Afterwards you can configure PTXdist
Extract the BSP sources
Extract the package TQ-TQMa7x-BSP-REV.0113.zip to any directory (e.g. /opt or /home):
$ cd ~/home/workspace $ tar -xvf TQMa7x.BSP.SW.SRC.0113.tar.gz $ cd TQMa7x.BSP.SW.SRC.0113