Difference between revisions of "TS-4900 Application Development"

From embeddedTS Manuals
Line 1: Line 1:
The default Yocto image provides both onboard libraries, and cross toolchains which are available here:
The default Yocto image provides both onboard libraries, and cross toolchains which are available here:
* [ftp://ftp.embeddedarm.com/ts-socket-macrocontrollers/ts-4900-linux/distributions/yocto/toolchain/poky-systemd-eglibc-x86_64-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-1.6.1.sh x86_64]
* [ftp://ftp.embeddedarm.com/ts-socket-macrocontrollers/ts-4900-linux/distributions/yocto/toolchain/poky-eglibc-x86_64-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-1.6.1.sh x86_64]
* [ftp://ftp.embeddedarm.com/ts-socket-macrocontrollers/ts-4900-linux/distributions/yocto/toolchain/poky-systemd-eglibc-i686-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-1.6.1.sh i686]
* [ftp://ftp.embeddedarm.com/ts-socket-macrocontrollers/ts-4900-linux/distributions/yocto/toolchain/poky-eglibc-i686-meta-toolchain-qt5-cortexa9hf-vfp-neon-toolchain-1.6.1.sh i686]


In the case of either toolchain you would run these commands to install them:
In the case of either toolchain you would run these commands to install them:
Line 11: Line 11:
When you want to build an application you would first source the environment for the toolchain:
When you want to build an application you would first source the environment for the toolchain:
<source lang=bash>
<source lang=bash>
source /opt/poky-systemd/1.6.1/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
source /opt/poky/1.6.1/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi


# Assuming you have a hello.c:
# Assuming you have a hello.c:
Line 20: Line 20:
$ echo $CC
$ echo $CC
#arm-poky-linux-gnueabi-gcc -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon  
#arm-poky-linux-gnueabi-gcc -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon  
#    -mtune=cortex-a9 --sysroot=/opt/poky-systemd/1.6.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
#    -mtune=cortex-a9 --sysroot=/opt/poky/1.6.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi
</source>
</source>


If you prefer to develop onboard you can use the serial console on the board, or bring up networking and ssh to the board.  Yocto provides the common development utilities, vim, gcc, g++, gdb, make, autoconf, binutils, and more in the image.  See the next sections for using the cross toolchain with IDEs.
If you prefer to develop onboard you can use the serial console on the board, or bring up networking and ssh to the board.  Yocto provides the common development utilities, vim, gcc, g++, gdb, make, autoconf, binutils, and more in the image.  See the next sections for using the cross toolchain with IDEs.

Revision as of 16:02, 10 September 2014

The default Yocto image provides both onboard libraries, and cross toolchains which are available here:

In the case of either toolchain you would run these commands to install them:

chmod a+x poky-systemd-*.sh
sudo ./poky-systemd-eglibc-*.sh

When you want to build an application you would first source the environment for the toolchain:

source /opt/poky/1.6.1/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi

# Assuming you have a hello.c:
$CC hello.c -o hello

#If you cat the environment file you can see all of the paths this sets up.
echo $CC
$ echo $CC
#arm-poky-linux-gnueabi-gcc -march=armv7-a -mthumb-interwork -mfloat-abi=hard -mfpu=neon 
#     -mtune=cortex-a9 --sysroot=/opt/poky/1.6.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi

If you prefer to develop onboard you can use the serial console on the board, or bring up networking and ssh to the board. Yocto provides the common development utilities, vim, gcc, g++, gdb, make, autoconf, binutils, and more in the image. See the next sections for using the cross toolchain with IDEs.