~~NOCACHE~~
===== Development Environment =====
===== Preface =====
The following instructions have been tested on Ubuntu @ubuntu_version@ (64 bit) in a VMWare virtual machine.
Some users have reported various issues using Ubuntu 16.04. We recommend to use Ubuntu 14.04
This page refers to the BSP and ancillary tools listed in the following table:
^ BSP Revision ^ @bsp_version@ ^
^++PTXdist|\\ version required by BSP++ | @ptx_version@ |
^++OSELAS Toolchain|\\ cf. [[http://www.pengutronix.de/software/ptxdist/appnotes/AppNote_BuildingToolchain.pdf|Building OSELAS.Toolchains]]++ | @oselas_version@.@oselas_patchlevel@ |
^ Platform | @mb_name_code@ |
^ U-Boot | @uboot_version@ |
^ Linux Kernel | @linux_kernel@ |
++++ Show details for previous revisions of the BSP |
{{template>en:
We recommend using PTXdist version @oselas_version@.0 to build the OSELAS.Toolchain-@oselas_version@. @oselas_patchlevel@. \\
This version may differ from the PTXdist version required to build the BSP itself.
===== Prerequisites =====
Please note: Ubuntu @ubuntu_version@ is required for the toolchain.
The BSP is available as a project ready to use with the PTXdist((http://www.ptxdist.org)) 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:
{{page>en:templates:packet-list}}
Although not required by PTXdist, we also recommend to configure and run a [[en:tftp|tftp server]] (for image download / update) and an [[en:nfs|nfs server]] (for network mounted rootfs) on your development host.
===== PTXdist set-up =====
It is recommended to first install PTXdist @oselas_version@ in order to build the toolchain (see note above).\\
Once the toolchain is compiled, install PTXdist @ptx_version@ is required to build the BSP.\\
You can always use a specific version of PTXdist by explicitly calling **ptxdist-**.\\ \\
__Example:__\\ $ ptxdist-@ptx_version@
__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 [[@lang@:@mod_arch@:@mod_name_code@:@bsp_name@:prepare#preface|prerequisites]] and download the required PTXdist tarball(s) (see [[@lang@:@mod_arch@:@mod_name_code@:@bsp_name@:Downloads|Downloads]] page for URLs).
Extract the tarball ptxdist-@ptx_version@.tar.bz2 and install as follows:
$ tar xvf ptxdist-@ptx_version@.tar.bz2
$ cd ptxdist-@ptx_version@
$ ./configure
$ make
$ sudo make install
This will install PTXdist to ///usr/local/lib// by default. Afterwards please configure PTXdist with:
$ ptxdist setup
.config - PTXdist @ptx_version@
──────────────────────────────────────────────────────────────────────────────
┌─────────────────────────── PTXdist @ptx_version@ ───────────────────────────┐
│ Arrow keys navigate the menu. selects submenus --->. │
│ Highlighted letters are hotkeys. Pressing includes, excludes, │
│ modularizes features. Press to exit, > for Help, > │
│ for Search. Legend: [*] built-in [ ] excluded module < > │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ --- PTXDIST Setup Menu │ │
│ │ User ---> │ │
│ │ Proxies ---> │ │
│ │ Project Searchpath ---> │ │
│ │ Source Directories ---> │ │
│ │ Source Download ---> │ │
│ │ IPKG Repository ---> │ │
│ │ Java SDK ---> │ │
│ │ Developer Options ---> │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ < 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.
==== Toolchain installation ====
See [[@lang@:@mod_arch@:@mod_name_code@:@bsp_name@:downloads|download page]] for links to toolchain download. If using precompiled toolchain install to ///opt//. Otherwise carefully follow the documentation for building toolchains found [[http://www.pengutronix.de/software/ptxdist/appnotes/AppNote_BuildingToolchain.pdf|here]] or in the [[@lang@:@mod_arch@:@mod_name_code@:@bsp_name@:downloads|download section]].\\ By default the toolchain will get installed to ///opt/OSELAS.Toolchain-//.
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/@ptxconfig_arch@_gcc-_glibc-_binutils-_kernel--sanitized.ptxconfig** (for @mod_name@)
* To build the toolchain project you should install the corresponding PTXdist version for the Toolchain (as told in the documentation).
The Toolchain normally is already setup in the BSP project. So you can move on to the next step.
==== BSP installation ====
Please see the README in the zip package for a detailed description of the zip contents
Extract the package @bsp_name_archive@@bsp_version@.zip to any directory (e.g. /home/projects/).
unzip TQ-TQMa6ULx-BSP-REV.0100.zip -d ~/projects/
After decompressing the BSP archive following archives are located in the destination folder:
* @bsp_archive_bin@.@bsp_version@.tgz → prebuild binaries for
* @bsp_archive_src@.@bsp_version@tar.gz → Board Support Package sources
Next step is to decompress the BSP source archive:
$ cd ~/projects
$ tar -xvf @bsp_archive_src@.@bsp_version_src@.tar.gz
$ cd @bsp_archive_src@.@bsp_version@